将数据框列的列表拆分为两个数据框列
问题内容:
我正在有效地尝试执行文本到列(从MS Excel)操作,但是在Pandas中。
我有一个数据框,其中包含诸如1_1、2_1、3_1之类的值,我只想将这些值放在下划线的右侧。我想出了如何分割字符串,这为我提供了分解后的字符串的列表,但我不知道如何将其分解为不同的数据框列。
这是我的代码:
import pandas as pd
test = pd.DataFrame(['1_1','2_1','3_1'])
test.columns = ['values']
test = test['values'].str.split('_')
我得到类似:[1,1],[2,1],[3,1]。
我想要得到的是两个单独的列:
col1:1,2,3 col2:1,1,1
有什么想法吗?在此先感谢您的帮助
问题答案:
使用expand=True
在做的时候split
,以获得多列:
test['values'].str.split('_', expand=True)
如果只有一个下划线,并且您只关心右边的值,则可以使用:
test['values'].str.split('_').str[1]