在 Pandas 中,如果你想要将一列包含列表的数据拆分成多个列,可以使用 .str.split()
方法。这个方法可以在字符串的列(系列)上运行,并返回列表(系列)。以下是一个简单的例子:
import pandas as pd
# 创建一个 DataFrame
df = pd.DataFrame({'AB': ['A1-B1', 'A2-B2']})
# 使用 split 方法分割 'AB' 列
df['AB_split'] = df['AB'].str.split('-')
# 输出 DataFrame
print(df)
输出结果:
AB AB_split
0 A1-B1 [A1, B1]
1 A2-B2 [A2, B2]
如果你的列中包含的是多个元素的列表,你可能需要将这一列拆分成多行。这种情况下,你可以使用 apply
和 pd.Series
方法来实现。以下是一个例子:
df = pd.DataFrame({'A': [1,2],'B': [[1,2], [1,2]]})
# 使用 apply 和 pd.Series 方法拆分 'B' 列
df = df.set_index('A').B.apply(pd.Series).stack().reset_index(level=0).rename(columns={0:'B'})
print(df)
输出结果:
A B
0 1 1
1 1 2
0 2 1
1 2 2
以上的代码将 'B' 列中的列表拆分成了多行¹²。希望这些信息对你有所帮助!
在 Pandas 中,如果你想要将一列包含列表的数据拆分成多个列,可以使用 `.str.split()` 方法。这个方法可以在字符串的列(系列)上运行,并返回列表(系列)。以下是一个简单的例子:
```python
import pandas as pd
# 创建一个 DataFrame
df = pd.DataFrame({'AB': ['A1-B1', 'A2-B2']})
# 使用 split 方法分割 'AB' 列
df['AB_split'] = df['AB'].str.split('-')
# 输出 DataFrame
print(df)
```
输出结果:
```
AB AB_split
0 A1-B1 [A1, B1]
1 A2-B2 [A2, B2]
```
如果你想要将分割的结果直接分成两列,可以这样做:
```python
df['A'], df['B'] = df['AB'].str.split('-', 1).str
```
输出结果:
```
AB AB_split A B
0 A1-B1 [A1, B1] A1 B1
1 A2-B2 [A2, B2] A2 B2
```
以上的代码将 'AB' 列分割成了两列 'A' 和 'B'¹。
如果你的列中包含的是多个元素的列表,你可能需要将这一列拆分成多行。这种情况下,你可以使用 `apply` 和 `pd.Series` 方法来实现。以下是一个例子:
```python
df = pd.DataFrame({'A': [1,2],'B': [[1,2], [1,2]]})
# 使用 apply 和 pd.Series 方法拆分 'B' 列
df = df.set_index('A').B.apply(pd.Series).stack().reset_index(level=0).rename(columns={0:'B'})
print(df)
```
输出结果:
```
A B
0 1 1
1 1 2
0 2 1
1 2 2
```
以上的代码将 'B' 列中的列表拆分成了多行¹²。希望这些信息对你有所帮助!
源: 与必应的对话, 2024/2/7
(1) dataframe一列分多列,多个分隔符分割字符串等等,还有交换列顺序 - 知乎. https://zhuanlan.zhihu.com/p/343895339.
(2) Pandas 将包含列表的列拆分为多个列 - 极客教程. https://geek-docs.com/pandas/pandas-questions/59_pandas_split_a_pandas_column_of_lists_into_multiple_columns.html.
(3) pandas的分列操作str.split()_pandas数据分列-CSDN博客. https://blog.csdn.net/liuweiyuxiang/article/details/90936521.
(4) Pandas DataFrame 中展开(拆分)多个列表列的高效方法 - 极客教程. https://geek-docs.com/pandas/pandas-questions/708_pandas_efficient_way_to_unnest_explode_multiple_list_columns_in_a_pandas_dataframe.html.
标签:分成,AB,df,列表,split,pd,B1,pandas,一列 From: https://blog.51cto.com/u_16055028/9637015