Pd:将列表列转换为字符串列

2024-10-04 11:31:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我这里有一个数据框,看起来像这样(我还不能上传图像,所以我使用纯文本):

      #  name  things
0    a   [d,e,f]
1    b   [g,f,s,w]
2    c   [s]

我想把它转换成:

#  name  things1  things2  things3 things4
0    a     d       e         f
1    b     g       f         s       w
2    c     s

有没有什么方法可以让我干净利落地做这件事?我只是一个初学者,所以我不能理解太复杂的代码。非常感谢


Tags: 数据方法代码name图像文本things初学者
1条回答
网友
1楼 · 发布于 2024-10-04 11:31:09

您正在查找以下行:

df2 = pd.concat([df.name, df.things.apply(pd.Series)], axis=1)

下面是一个可复制的示例(相同的转换,但有完整的代码,以便您可以重新介绍和理解它):

# Create dataset
import pandas as pd
import numpy as np

df = pd.DataFrame(np.array([["a", "b"],[["d", "e", "f"],["d", "e", "f"]]])).T
df.columns = ["value", "list"]

# Apply transformation
df2 = pd.concat([df.value, df.liste.apply(pd.Series)], axis=1)

相关问题 更多 >