python pandas read_csv skiprows不起作用

时间:2017-05-16 16:29:03

标签: python pandas

我正在分别阅读一个大文件,因为pd.read_csv通常会导致错误并在读取大型csv文件时关闭ipython笔记本中的内核。

但是,在我的情况下,skiprow功能不起作用 将熊猫更新到最新版本为0.20.1 但是跳过功能仍然不起作用。

在下面的部分中,我想跳过前两行,只读取第2到第6行。但未能通过在pd.read_csv中使用skiprows跳过前两行。

def read(path, header):
    df= pd.read_csv(path, nrows=6, engine='python')
    df1= pd.read_csv(path, skiprows=2, nrows=6, engine='python' )
    df.columns= header    

    print df.shape
    print df1.shape
    return df

结果证明是

(6, 26)
(6, 26)

表明跳线根本不起作用.. 谷歌搜索,但没有看到任何人和我有同样的问题.. 我想知道我是否错过了导致这个问题的一些重要部分。

提前致谢。

添加信息:

我的csv文件的前7行:

0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25

20151201000000,b616e9b1f0b488ed2aacf08b6165fc4f76f664aeae46c20c49b7e1e2c81e5f71-ee42bb396f6f56f518c5b04df271c1f173c0bcf13496294464b8d87d3ee17945,(SFC) ウイザードリイ・外伝4 (管理:4366),4988606101009,998,1,17297,2511,2161,16899,16900,16903,,,,,shopping,game_and_toy,video_game,retro_game,super_famicom,software,,,,"

"

20151201000000,b616e9b1f0b488ed2aacf08b6165fc4f76f664aeae46c20c49b7e1e2c81e5f71-ee42bb396f6f56f518c5b04df271c1f173c0bcf13496294464b8d87d3ee17945,(SFC) スーパードラッケン (管理:3701),4906571521028,298,1,17297,2511,2161,16899,16900,16903,,,,,shopping,game_and_toy,video_game,retro_game,super_famicom,software,,,,"

"

20151201000000,b616e9b1f0b488ed2aacf08b6165fc4f76f664aeae46c20c49b7e1e2c81e5f71-ee42bb396f6f56f518c5b04df271c1f173c0bcf13496294464b8d87d3ee17945,(FC) サンダーバード  (管理:9347),4988110900051,498,1,17302,2511,2161,16899,16904,16908,,,,,shopping,game_and_toy,video_game,retro_game,nes,software,,,,"

"

20151201000000,b616e9b1f0b488ed2aacf08b6165fc4f76f664aeae46c20c49b7e1e2c81e5f71-ee42bb396f6f56f518c5b04df271c1f173c0bcf13496294464b8d87d3ee17945,(FC) ガンサイト (管理:8853),4988602564624,198,1,17302,2511,2161,16899,16904,16908,,,,,shopping,game_and_toy,video_game,retro_game,nes,software,,,,"

"


  20151201000000,b616e9b1f0b488ed2aacf08b6165fc4f76f664aeae46c20c49b7e1e2c81e5f71-ee42bb396f6f56f518c5b04df271c1f173c0bcf13496294464b8d87d3ee17945,(SFC) プリンセスメーカー (管理:4201),4904880133802,298,1,17297,2511,2161,16899,16900,16903,,,,,shopping,game_and_toy,video_game,retro_game,super_famicom,software,,,,"

它非常脏并且是冗余的线路","发生在两行中的任何一行..

1 个答案:

答案 0 :(得分:1)

nrows来自起始偏移量,而不是来自文件的开头。你想要nrows=4

相关问题