我有以下的數據幀,我想給col2的分成多列:大熊貓拆分數據幀列
輸入數據幀:
>>> mydf= pd.DataFrame({'Col1':['AA','AB','AAC'], 'Col2':['AN||Ind(0.9)','LN||RED(8.9)','RN||RED(9.8)'], 'Col3':['log1','log2','log3']})
>>> mydf
Col1 Col2 Col3
0 AA AN||Ind(0.9) log1
1 AB LN||RED(8.9) log2
2 AAC RN||RED(9.8) log3
期望中的數據框:
Col1 Col2 Col3 Col4 Col5
0 AA AN log1 Ind 0.9
1 AB LN log2 RED 8.9
2 AAC RN log3 RED 9.8
我開始與申請,但以下將採取幾個步驟。任何捷徑?
mydf['Col4']=mydf['Col2'].apply(lambda x: str(x).split('||')[0])
爲什麼下面拋出一個valuerror也有點糊塗:
mydf['Col2'].str.split('||', expand=True)
ValueError: split() requires a non-empty pattern match.
有這麼'pop'再次:-) – piRSquared
@piRSquared,我們對此深感抱歉! 8-D – MaxU
但你的字典更優雅!!! – MaxU