打印熊猫数据框时,如何在标题中包括列类型?

时间:2018-11-06 23:15:17

标签: python pandas dataframe

如何将仅打印熊猫DataFrame和DataFrame.dtypes的功能结合起来。

例如,不仅仅是打印(df)并获取:

      animal age
0  alligator 12
1        bee 13
2     falcon 1
3       lion 15
4     monkey 14
5     parrot 44
6      shark 100
7      whale 200
8      zebra 14

我会得到:

      animal (string) age (int64)
0  alligator          12
1        bee          13
2     falcon          1
3       lion          15
4     monkey          14
5     parrot          44
6      shark          100
7      whale          200
8      zebra          14

我正在关注在线教程,希望了解之前和之后的表格结构。

2 个答案:

答案 0 :(得分:2)

您可以使用zipdf.dtypes将列标题重命名为元组:

df.columns=list(zip(df.columns, df.dtypes))

请注意,字符串列的dtype不是'string',而是'object'

答案 1 :(得分:1)

第一笔记Pandas dtype不一定反映Python内置类型。例如,没有TypeLiteral<?> dtype这样的东西。在Pandas中,字符串以str dtype系列存储,该dtype系列表示指向任意对象的指针。

您可以使用列表推导并分配给列:

object

对于您的用例,只需打印df.columns = [f'{col} ({col_type})' for col, col_type in zip(df, df.dtypes)] print(df) animal (object) age (int64) 0 alligator 12 1 bee 13 2 falcon 1 3 lion 15 4 monkey 14 5 parrot 44 6 shark 100 7 whale 200 8 zebra 14 就足够了。