Python 读取数据帧

Python 读取数据帧,python,pandas,Python,Pandas,我正在努力学习熊猫,但我有一个非常基本的问题。 当我尝试读取csv文件时,它会给我文件描述,但我无法显示数据。我做错什么了吗?它适用于较小的文件,但对于这个文件,我不知道如何读取数据。这是我的密码: file = pd.read_csv('C:\\Users\\djimenez\\Desktop\\123.csv') print file 这就是我得到的 <class 'pandas.core.frame.DataFrame'> Int64Index: 914 ent

我正在努力学习熊猫,但我有一个非常基本的问题。 当我尝试读取csv文件时,它会给我文件描述,但我无法显示数据。我做错什么了吗?它适用于较小的文件,但对于这个文件,我不知道如何读取数据。这是我的密码:

   file =  pd.read_csv('C:\\Users\\djimenez\\Desktop\\123.csv')
   print file
这就是我得到的

<class 'pandas.core.frame.DataFrame'>
Int64Index: 914 entries, 0 to 913
Data columns (total 2 columns):
dasz_id            914  non-null values
dasz_undev_2012    914  non-null values
dtypes: int64(2)

INT64索引:914个条目,0到913
数据列(共2列):
dasz_id 914非空值
dasz_undev_2012 914非空值
数据类型:int64(2)

它似乎在读取数据,但我看不到。如何从中生成数据帧?

如果要限制要显示的行数,您可以更改:

pd.set_option('display.max_rows', 1000)
要解决这个问题,这有点道理

或者,您可以打印数据框:
print(file)
或只显示顶部的
n
行:

file.head() # default is 5 but you can pass any number
如果您在IPython中,则tab completion将显示默认设置和当前设置:

可用选项:

  • 显示。[切块阈值,列标题对齐,列间距,日期日期日期优先,日期年份优先,编码,展开帧报告, 浮点格式、高度、大报告、线宽、最大列、, 最大列宽,最大信息列,最大信息行,最大行, 最大顺序项目、mpl样式、多稀疏、笔记本报告html,
    p打印\u嵌套\u深度、精度、显示\u尺寸、宽度]
  • io.excel.xls.[writer]
  • io.excel.xlsm.[writer]
  • io.excel.xlsx.[writer]
  • io.hdf.[默认格式,dropna\u表]
  • 模式。[链式分配,模拟交互,使用inf作为null]
参数 ----------帕特:str 应与单个选项匹配的Regexp。 注意:为方便起见,支持部分匹配,但除非使用 完整选项名称(例如x.y.z.option_name),您的代码将来可能会中断 如果引入了具有类似名称的新选项,则为。价值: 期权的新价值

返回 -------没有

提高 ------如果不存在此类选项,则为OptionError

注释 -----可用选项及其说明:

display.line_width:[默认值:80][当前值:80]:int 不赞成。 (不推荐使用,请改用
display.width

display.max_columns:[默认值:20][当前值:20]:int max_行和max_列用于repr()方法,以确定 to_string()或info()用于将对象渲染为字符串。万一 python/IPython正在终端中运行,可以将其设置为0和0 将正确自动检测终端的宽度,并切换到较小的宽度 格式,以防所有列无法垂直放置。IPython笔记本, IPython qtconsole或IDLE不在终端中运行,因此它不是 可以进行正确的自动检测。 “无”值表示无限制

display.max_colwidth:[默认值:50][当前值:50]:int 报表中列的最大字符宽度 数据结构。当列溢出时,会出现“…” 占位符嵌入到输出中

display.max\u info\u列:[默认值:100][当前值:100]:int 在DataFrame.info方法中使用max_info_列来决定 将打印每列信息

display.max_info_行:[默认值:1690785][当前:1690785]:int 或者没有 info()通常会为每列显示空计数。 对于大帧,这可能会非常慢。最大信息行和最大信息列 将此空检查仅限于指定尺寸较小的帧

display.max_rows:[默认值:60][当前值:60]:int 这将设置打印时熊猫应该输出的最大行数 输出各种输出。例如,此值确定repr()是否 对于数据帧,可以完全打印,也可以仅打印摘要报告。 “无”值表示无限制


为了简洁起见,我对输出进行了裁剪

EdChum已经在上面给出了一个很好的答案,但我发现另一个有用的方法是数据帧上的to_clipboard()方法,它可以制作一个框架的副本,然后粘贴到excel中-我觉得这非常方便。在我注意到这个方法之前,每当我需要快速查看一个对于ipython查看器来说有点大的数据帧时,我经常输出一个新的csv。(我想对EdChum的回答发表评论,但我的代表<50,所以我不能!)


在您的情况下,这可能没有意义,因为您可以直接在excel中打开您的csv,但在您阅读的框架上进行一点处理后,它会非常有用。

谢谢,我知道它很简单,但我不知道它是什么。@DanielJimenez您可以通过执行
pd.description\u option()获得一个选项列表,即使没有IPython也可以
,而且您现在应该有足够的代表进行投票;)谢谢,所有的提示都很有用。就像我说的,我正在努力学习如何使用熊猫,信息越多越好。