从一系列列表中创建一个Pandas DataFrame

时间:2018-06-13 20:22:11

标签: python pandas

我有一个Pandas系列列表

0 ['2018-3-13', '16:00']
1 ['2018-3-13', '16:01']
2 ['2018-3-13', '16:02']
3 ['2018-3-13', '16:03']
.
.
.

我想将DataFrame创建为

0 '2018-3-13' '16:00'
1 '2018-3-13' '16:01'
2 '2018-3-13' '16:02'
3 '2018-3-13' '16:03'
...

所以任何人都可以提供创新的想法吗?

非常感谢

2 个答案:

答案 0 :(得分:2)

一种方法是提取NumPy数组表示并使用np.ndarray.tolist。然后,您可以输入pd.DataFrame

import pandas as pd

s = pd.Series([['2018-3-13', '16:00'], ['2018-3-13', '16:01'],
               ['2018-3-13', '16:02'], ['2018-3-13', '16:03']])

df = pd.DataFrame(s.values.tolist(), columns=['date', 'time'])

print(df)

        date   time
0  2018-3-13  16:00
1  2018-3-13  16:01
2  2018-3-13  16:02
3  2018-3-13  16:03

答案 1 :(得分:0)

您可以使用applypd.Series,例如:

# with jpp data
s = pd.Series([['2018-3-13', '16:00'], ['2018-3-13', '16:01'],
               ['2018-3-13', '16:02'], ['2018-3-13', '16:03']])
# then you use apply and rename
df = s.apply(pd.Series).rename(columns={0:'date',1:'time'})

只是另一种方法