熊猫阅读DataFrame

时间:2014-06-05 15:00:06

标签: python pandas

我正在努力学习熊猫,但我有一个非常基本的问题。 当我尝试读取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)

Iit似乎正在读取数据,但我看不到它。如何从中创建数据框?

2 个答案:

答案 0 :(得分:2)

Pandas限制了要显示的行数,您可以更改:

pd.set_option('display.max_rows', 1000)

会解决这个问题,关于这个online

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

file.head() # default is 5 but you can pass any number

如果您在IPython中,则tab-completion将显示默认和当前设置:

  

可用选项:

     
      
  • display。[chop_threshold,colheader_justify,column_space,date_dayfirst,date_yearfirst,encoding,expand_frame_repr,   float_format,height,large_repr,line_width,max_columns,   max_colwidth,max_info_columns,max_info_rows,max_rows,   max_seq_items,mpl_style,multi_sparse,notebook_repr_html,
      pprint_nest_depth,precision,show_dimensions,width]
  •   
  • io.excel.xls。[作家]
  •   
  • io.excel.xlsm。[作家]
  •   
  • io.excel.xlsx。[作家]
  •   
  • io.hdf。[default_format,dropna_table]
  •   
  • mode。[chained_assignment,sim_interactive,use_inf_as_null]
  •   
     

参数   ----------拍:str       正则表达式应匹配单个选项。       注意:为方便起见,支持部分匹配,但除非您使用       完整选项名称(例如x.y.z.option_name),您的代码将来可能会中断       版本如果引入了具有相似名称的新选项。价值:       期权的新价值。

     

返回   -------无

     

加薪   ------如果不存在这样的选项,则为OptionError

     

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

     

display.line_width:[default:80] [当前:80]:int           已过时。           (已弃用,请改用display.width。)

     

display.max_columns:[default:20] [当前:20]:int           max_rows和max_columns用于 repr ()方法来决定是否           to_string()或info()用于将对象呈现为字符串。如果           python / IPython在终端中运行,可以设置为0和pandas           将正确自动检测终端的宽度并交换为较小的           格式,以防所有列都不垂直。 IPython笔记本,           IPython qtconsole或IDLE不在终端中运行,因此它不是           可以做正确的自动检测。           “无”值意味着无限制。

     

display.max_colwidth:[default:50] [当前:50]:int           repr中列的最大字符宽度           熊猫数据结构。当列溢出时,“......”           占位符嵌入在输出中。

     

display.max_info_columns:[默认值:100] [当前:100]:int           max_info_columns用于DataFrame.info方法来决定是否           每列信息将被打印。

     

display.max_info_rows:[default:1690785] [当前:1690785]:int   或者没有           df.info()通常会显示每列的空值。           对于大型框架,这可能非常慢。 max_info_rows和max_info_cols           将此null检查仅限制为具有较小尺寸的帧。

     

display.max_rows:[default:60] [当前:60]:int           这设置了pandas在打印时应输出的最大行数           各种输出。例如,此值确定是否repr()           对于数据帧完全打印或只是一个摘要repr。           “无”值意味着无限制。

我为了简洁而修剪了输出

答案 1 :(得分:0)

EdChum已经在上面给出了一个很好的答案,但我觉得有用的另一件事是数据框上的to_clipboard()方法,它可以复制你可以粘贴到excel的框架 - 我发现这非常方便。在我注意到这种方法之前,每次我需要快速查看对于ipython查看器来说有点大的数据帧时,我经常会输出一个新的csv。 (我会对EdChum的答案做出评论,但我的代表是&lt; 50,所以我不能!)

在你的情况下,这可能没有意义,因为你可以直接在excel中打开你的csv,但是在对你读过的帧进行一点处理后,它会非常有用。