Python Pandas read_table()缺少行

Python Pandas read_table()缺少行,python,pandas,numpy,Python,Pandas,Numpy,Pandasread\u table函数在我试图读取的文件中缺少一些行,我无法找出原因 import pandas as pd import numpy as np filename = "whatever.txt" df_pd = pd.read_table(filename, use_cols=['FirstColumn'], skip_blank_lines=False) df_np = np.genfromtxt(filename, usecols=0) #function to c

Pandas
read\u table
函数在我试图读取的文件中缺少一些行,我无法找出原因

import pandas as pd
import numpy as np
filename = "whatever.txt"

df_pd = pd.read_table(filename, use_cols=['FirstColumn'], skip_blank_lines=False)
df_np = np.genfromtxt(filename, usecols=0)

#function to count file line by line
def file_len(fname):
    with open(fname) as f:
        for i, l in enumerate(f):
            pass
    return i + 1

len_pd = len(df_pd)
len_np = len(df_np)
len_linebyline = file_len(filename)
不幸的是,我无法共享我的实际数据,因为它是一个巨大的文件,30列x 5800万行,而且受许可保护。出于某种原因,numpy和file_len方法给出了约5800万行的正确长度,但pandas方法只有约5500万行


有没有人知道是什么原因导致了这种情况,或者我如何调查它?

使用以下方法,您可以尝试找到丢失的数据:

In [31]: df = pd.DataFrame({'col':[0,1,2,3,4,6,7,8]})

In [32]: a = np.arange(10)

In [33]: df
Out[33]:
   col
0    0
1    1
2    2
3    3
4    4
5    6
6    7
7    8

In [34]: a
Out[34]: array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

In [35]: np.setdiff1d(a, df.col)
Out[35]: array([5, 9])

请提供一个可复制的样本(使用假数据)数据集-3-5行就足够了。。。请阅读@ MaXu,我在这个例子中提到的第一个列只是整数,它充当ID。我不知道如何提供一个可重复的样本,因为看起来大部分数据都是好的,但是中间有一个块导致了这个问题,但是我不知道那个块是不同的还是在哪里。感谢您提出其他问题,尽管有人猜测您的问题无法看到可复制数据集的可能性非常低。。。因此,您必须分析问题,找出熊猫一侧缺少哪些数据,然后您将知道原因或能够提供可复制的数据集。只有我的0美元。02@MaxU谢谢你的建议。我想我只是感到沮丧,因为我不知道如何重现这个问题,如果可以,我很可能自己就能解决这个问题。我知道这个问题的措辞很难回答