我创建了一个数据框Create
,其中的csv数据如下:
df
我试图通过将col_1,col_2
001,JOHN VARCHAR(11) NOT NULL^RANDY VARCHAR(2) NOT NULL^MICHAEL VARCHAR(105) NOT NULL^DATE STRING
002,Danny VARCHAR(87)^EDWARD VARCHAR(4) NOT NULL^ROB VARCHAR(73) NOT NULL
除以^分隔符来获得空间分隔符的第二个值,如df下方
col_2
我在下面使用,但无法获得空格的第二个值
col_1,col_2,col_3
001,JOHN VARCHAR(11) NOT NULL^RANDY VARCHAR(2) NOT NULL^MICHAEL VARCHAR(105) NOT NULL^DATE STRING,VARCHAR(11)^VARCHAR(2)^VARCHAR(105)^STRING
002,Danny VARCHAR(87)^EDWARD VARCHAR(4) NOT NULL^ROB VARCHAR(73) NOT NULL,VARCHAR(87)^VARCHAR(4)^VARCHAR(73)
答案 0 :(得分:1)
您在正确的路径上,可以使用col2
字符拆分^
的值,并获取^
联接的数据类型并将其分配给{{1} }:
col3
结果
import pandas as pd
data = {'col1':['001','002'],
'col2': ['JOHN VARCHAR(11) NOT NULL^RANDY VARCHAR(2) NOT NULL^MICHAEL VARCHAR(105) NOT NULL^DATE STRING',
'Danny VARCHAR(87)^EDWARD VARCHAR(4) NOT NULL^ROB VARCHAR(73) NOT NULL']}
df = pd.DataFrame.from_dict(data)
df['col3'] = list(map(lambda x: '^'.join([col.split(' ')[1] for col in x]), df.col2.str.split('^')) )
答案 1 :(得分:1)