DataFrame.describe方法忽略了一些列

时间:2016-09-06 15:25:19

标签: python pandas

我正在尝试"描述"在我的数据帧上运行Pandas,但它只显示一列,而不是我在CSV文件中导入的四列。请注意,我正在使用Jupyter来执行此操作。

以下输出显示了DataFrame的外观以及describe的结果。有谁知道为什么我在使用describe时没有回到所有列?它与我的文件有什么关系,这是一个简单的CSV文件?

hist.head()

   Year  Month     Overall      Mobile
0  2016   July  76,762,352  65,908,711
1  2016   June  76,523,713  65,465,770
2  2016    May  77,057,451  65,297,809
3  2016  April  76,722,596  64,739,144
4  2016  March  78,258,917  66,287,421
hist.describe()    
              Year
count    67.000000
mean   2013.313433
std       1.634931
min    2011.000000
25%    2012.000000
50%    2014.000000
75%    2015.000000
max    2016.000000

2 个答案:

答案 0 :(得分:4)

当DataFrame包含至少一个数字列时,df.describe()仅描述数字列。这意味着您的其他列不会被视为数字。您可以通过键入df.dtypes来确认(它将返回其他列的对象)。

DataFrame中的问题是千位分隔符。您可以通过pd.read_csv(filename, sep=';', thousands=',')正确阅读。 sep部分只是基于千位分隔符的猜测。您可能需要根据文件进行更改。

答案 1 :(得分:0)

我知道这是一个较晚的回复。希望它可以帮助某人。

除了ayhan的回复,

如果您认为列具有数值,则将类型更改为float:

df[['col1', 'col2']] = df[['col1', 'col2']].astype(float)