数据框使用第一列作为标题行

时间:2019-01-11 04:47:03

标签: python pandas

我有以下列表:

>>> s=[('id', 'email', 'timestamp'), (1, 'mark@gmail.com', datetime.datetime(2018, 12, 7, 1, 56, 43)), (2, 'tony@bravo.com', datetime.datetime(2018, 12, 7, 18, 1, 36))]

将其加载到数据帧中可以给我:

df = pd.DataFrame(s)
    0                     1                    2
0  id                 email            timestamp
1   1         mark@gmail.com  2018-12-07 01:56:43
2   2        tony@cinely.com  2018-12-07 18:01:36

我知道您可以将标题行传递给read_csv方法,但是您如何从直接的DataFrame开始呢?

3 个答案:

答案 0 :(得分:4)

使用columns参数:

df = pd.DataFrame(s[1:], columns=s[0])

print(df)
   id           email           timestamp
0   1  mark@gmail.com 2018-12-07 01:56:43
1   2  tony@bravo.com 2018-12-07 18:01:36

答案 1 :(得分:1)

set_indexT

pd.DataFrame(s).T.set_index(0).T
0 id           email            timestamp
1  1  mark@gmail.com  2018-12-07 01:56:43
2  2  tony@bravo.com  2018-12-07 18:01:36

答案 2 :(得分:0)

尝试一下:

df.columns = df.iloc[0]
df = df.drop(df.index[[0]])