pandas将列中逗号分隔变成不同列
时间: 2023-07-12 12:51:05 浏览: 101
你可以使用`pandas`中的`str.split()`函数将包含逗号分隔值的列分成多个列。例如,假设你有一个包含逗号分隔值的`data`数据帧和一个名为`col`的列,你可以使用以下代码将其分成多个列:
```python
new_cols = data['col'].str.split(',', expand=True)
data[new_cols.columns] = new_cols
```
这将在`data`数据帧中创建多个新列,每个新列都包含原始列中的一个逗号分隔值。
相关问题
pandas将列中逗号分隔变成不同行
您可以使用 `pandas` 的 `str.split()` 方法将逗号分隔的值转换为列表,然后使用 `explode()` 方法将列表中的每个元素拆分成不同行。
例如,假设您有一个名为 `df` 的数据框,其中包含一个名为 `col` 的列,其中的值是逗号分隔的字符串。则您可以使用以下代码将每个逗号分隔的值拆分成不同行:
```python
import pandas as pd
# 创建示例数据框
data = {'col': ['a,b,c', 'd,e', 'f,g,h']}
df = pd.DataFrame(data)
# 将逗号分隔的值转换为列表
df['col'] = df['col'].str.split(',')
# 将每个列表中的元素拆分成不同行
df = df.explode('col')
print(df)
```
输出结果如下:
```
col
0 a
0 b
0 c
1 d
1 e
2 f
2 g
2 h
```
pandas 匹配列逗号,替换数据
要在 pandas 中匹配列中的逗号并替换数据,您可以使用 str.replace() 方法。例如,假设您有一个名为 df 的 DataFrame,其中有一个名为 column_name 的列,其中包含逗号分隔的数据。您可以使用以下代码将其中的逗号替换为句点:
```
df['column_name'] = df['column_name'].str.replace(',', '.')
```
这将使 DataFrame 中列 column_name 中的所有逗号都被替换为句点。请注意,此操作将更改原始 DataFrame 中的数据。如果您希望创建一个新的 DataFrame,而不是更改原始 DataFrame,请使用以下代码:
```
new_df = df.copy()
new_df['column_name'] = new_df['column_name'].str.replace(',', '.')
```