我正在使用csv.reader和pandas导入csv文件。但是,同一文件中的行数不同。
modelBuilder.Entity<ParticipantSIR>()
.HasMany(e => e.ParticipantSIRAssessmentReport)
.WithMany(e => e.ParticipantSIR)
.Map(e => e.ToTable("ParticipantSIRAssessmentReport") //Name of the linking table
.MapLeftKey("ParticipantSIRId") //Name of the Left column
.MapRightKey("ParticipantSIRAssessmentReportId")); //Name of the right column
结果是10,000(这是正确的值)。但是,pandas会返回不同的值。
reviews = []
openfile = open("reviews.csv", 'rb')
r = csv.reader(openfile)
for i in r:
reviews.append(i)
openfile.close()
print len(reviews)
这将返回9,985
有谁知道为什么两种导入数据的方法有区别?
我刚试过这个:
df = pd.read_csv("reviews.csv", header=None)
df.info()
这将返回10,000。
答案 0 :(得分:5)
请参阅pandas.read_csv
有一个名为skip_blank_lines
的参数,其默认值为True
,因此,除非您将其设置为False
,否则它将不会读取空白行
考虑以下示例,有两个空白行:
A,B,C,D 0.07,-0.71,1.42,-0.37 0.08,0.36,0.99,0.11 1.06,1.55,-0.93,-0.90 -0.33,0.13,-0.11,0.89 1.91,-0.74,0.69,0.83 -0.28,0.14,1.28,-0.40 0.35,1.75,-1.10,1.23 -0.09,0.32,0.91,-0.08
使用skip_blank_lines = False:
阅读df = pd.read_csv('test_data.csv', skip_blank_lines=False) len(df) 10
使用skip_blank_lines = True:
阅读df = pd.read_csv('test_data.csv', skip_blank_lines=True) len(df) 8