将列中的字符串拆分为单独的列

我正在尝试将字符串值从列中拆分为与每行中的字符串一样多的列。我正在创建一个包含三列的新数据框,第三列中有字符串值,我想拆分为新列(已经有标题),但每行中用分号分隔的字符串数量不同如果我使用这段代码:

df['string']= df['string'].str.split(';', expand=True)

那么我将在该列中只留下一个值,而其余的字符串值将不会被分割而是被消除。

Cal u 建议如何修改这行代码以获得正确的输出?提前谢谢了


子衿沉夜
浏览 105回答 2
2回答

忽然笑

您可以获取拆分结果并与原始 DataFrame 连接,而不是覆盖原始列df = pd.DataFrame({'my_string':['car;war;bus','school;college']})df = df.join(df['my_string'].str.split(';',expand=True))print(df)        my_string       0        1     20     car;war;bus     car      war   bus1  school;college  school  college  None

繁花如伊

然后我们就做df['string']= df['string'].str.split(';', expand=True).str[0]
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python