在 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]


如果你的列中包含的是多个元素的列表,你可能需要将这一列拆分成多行。这种情况下,你可以使用 applypd.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.