2017-04-04 69 views
1

我有时间戳列表的列表的列表中添加多个新列,其中每个内部列表如下:大熊猫一下子从列表

['Tue', 'Feb', '7', '10:07:40', '2017']

是否有可能与大熊猫在增加五个新列同一时间到一个已经创建的数据帧(与外部列表长度相同),它们与这些值中的每一个相等,名称为'day','month','date','time','year'

回答

1

我认为你可以使用DataFrame构造与concat

df = pd.DataFrame({'A':[1,2,3], 
        'B':[4,5,6], 
        'C':[7,8,9]}) 

L = [['Tue', 'Feb', '7', '10:07:40', '2017'], 
    ['Tue', 'Feb', '7', '10:07:40', '2017'], 
    ['Tue', 'Feb', '7', '10:07:40', '2017']] 

cols = ['day','month','date','time','year'] 
df1 = pd.DataFrame(L, columns=cols) 
print (df1) 
    day month date  time year 
0 Tue Feb 7 10:07:40 2017 
1 Tue Feb 7 10:07:40 2017 
2 Tue Feb 7 10:07:40 2017 

df2 = pd.concat([df, df1], axis=1) 
print (df2) 
    A B C day month date  time year 
0 1 4 7 Tue Feb 7 10:07:40 2017 
1 2 5 8 Tue Feb 7 10:07:40 2017 
2 3 6 9 Tue Feb 7 10:07:40 2017 

一个内胆:

df2 = pd.concat([df, pd.DataFrame(L, columns=['day','month','date','time','year'])], axis=1) 
print (df2) 
    A B C day month date  time year 
0 1 4 7 Tue Feb 7 10:07:40 2017 
1 2 5 8 Tue Feb 7 10:07:40 2017 
2 3 6 9 Tue Feb 7 10:07:40 2017 
+0

谢谢是啊,这差不多就是我终于实现了。试图使它成为一个班轮,但我想这没有意义 – Austin

+1

没问题,一线解决方案被添加;) – jezrael

+0

啊我应该已经意识到,谢谢:) – Austin