Python DataFrame.Descripte方法忽略某些列

Python DataFrame.Descripte方法忽略某些列,python,pandas,Python,Pandas,我试图在我的数据帧上用Pandas“描述”函数,但它只显示一列,而不是我在CSV文件中导入的四列。请注意,我正在使用Jupyter来实现这一点 下面是显示数据帧外观的输出以及描述的结果。有人知道为什么我在使用descripe时没有返回所有列吗?它是否与我的简单CSV文件有关 hist.head() Year Month Overall Mobile 0 2016 July 76,762,352 65,908,711 1 2016 June 76,52

我试图在我的数据帧上用Pandas“描述”函数,但它只显示一列,而不是我在CSV文件中导入的四列。请注意,我正在使用Jupyter来实现这一点

下面是显示数据帧外观的输出以及
描述的结果。有人知道为什么我在使用descripe时没有返回所有列吗?它是否与我的简单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


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


数据帧中的问题是千位分隔符。您可以传递
pd.read_csv(文件名,sep=';',数千=',')
以正确读取它
sep
part只是基于千位分隔符的猜测。您可能需要根据您的文件进行更改。

我知道这是一个延迟响应。希望它能帮助别人

除了阿汉的回复

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

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

谢谢,我试过了,但似乎也不起作用。我想在这里发布另一个屏幕截图,但看起来它不会让我这么做。hist.head()给我2016年7月的“76762352”、“65908171”、“10,9”这一行,这不是它应该的样子。你能在你的帖子中包含几行你的CSV文件吗?这不是head()正在做的吗?这是转换后的版本。我要的是原始文件的行,这样我就可以尝试在上面读取CSV了。
df[['col1', 'col2']] = df[['col1', 'col2']].astype(float)