我有一个数组,其值由“|”分隔。我想将它解析为 Pandas 数据框。
import pandas as pd
arr = ['19345360853|5264654|100530|2017-01-07', '19345360853|13518371|100530|2018-10-08']
pd.DataFrame([{'Id': item.split('|')[0] ,'Code_A': item.split('|')[1] , 'Code_B': item.split('|')[2],'Reg_Date': item.split('|')[3]} for item in arr ])
我希望 pandas 数据框采用以下模式,
'Id' 字符串 'Code_A' 字符串 'Code_B' 字符串 'Reg_Date' 日期
因此生成的 Pandas 数据框与此类似。 result dataframe
感谢任何帮助。
请您参考如下方法:
首先,转为二维列表
arr = [a.split("|") for a in arr]
其次,转换为pandas dataframe
data = pd.DataFrame(arr,columns=['Id','Code_A','Code_B','Reg_Date'])
Id Code_A Code_B Reg_Date
0 19345360853 5264654 100530 2017-01-07
1 19345360853 13518371 100530 2018-10-08
使用 astype 转换列 Reg_Date(引用:astype)
a =pd.DataFrame(arr,columns=['Id','Code_A','Code_B','Reg_Date'])
a['Reg_Date'] = a['Reg_Date'].astype('datetime64[ns]')
