本文介绍了将Python列表解析为Pandas DataFrame的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个数组,其值由'|'分隔.我想将其解析为熊猫数据框.

I have an array that has values separated by '|'. I would like to parse it to a pandas data frame.

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数据框位于以下架构中,

I would like the pandas dataframe to be in the following schema,

'Id'字符串'Code_A'字符串'Code_B'字符串"Reg_Date"日期

'Id' string'Code_A' string'Code_B' string'Reg_Date' date

因此,生成的Pandas数据框将与此类似.结果数据框

So the resulting Pandas dataframe would be similar to this.result dataframe

感谢您的帮助.

推荐答案

首先,转换为二维列表

arr = [a.split("|") for a in arr]

第二,转换为熊猫数据框

Second, convert to 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列(参考:类型)

Convert column Reg_Date using astype (Ref: astype)

a =pd.DataFrame(arr,columns=['Id','Code_A','Code_B','Reg_Date'])
a['Reg_Date'] = a['Reg_Date'].astype('datetime64[ns]')

这篇关于将Python列表解析为Pandas DataFrame的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-11 15:01