python - 如果行数与标题数不匹配,则在 read_csv 中引发错误
问题描述
我有大量csv
文件,我试图确定文件中的记录是否与预定义的模式一致。例如,给定一个 csv :
col1,co2,col3,col4,col5,col6
A,B,,C,D,E
M,N,O,,,
U,V,W,
第一行是一致的,因为它具有与标题一样多的条目(即使存在缺失值)。第二行也是一致的,因为它的条目与标题一样多,但第三行不一致,因为它只有 3 个条目。
我正在寻找一种方法pandas.read_csv
来提高第 3 行的错误值,但是到目前为止,当我在 pandas 中读取文件时,它会读取所有带有 NA 的行以查找第 3 行中的缺失值。我尝试过使用error_bad_lines
和na_filter
,但这并不能解决我的问题。有什么想法可以解决这个问题吗?我不想遍历 csv 中的每一行,因为一些文件相当大,每个文件需要几分钟,这对我来说行不通。
解决方案
那么error_bad_lines
将确保没有额外的列。至于丢失的列,不幸的是,如果不迭代数据,就无法检查这些列。您可以使用assert(not df.isnull().values.any())
.
推荐阅读
- python - 如何在嵌套函数中评估外部范围的变量?
- java - 在我的 getter 方法中格式化双重问题
- c# - 我的 C# JavaScriptSerializer 输出为空?
- powershell - REVERSE - DISM /Online /Remove-ProvisionedAppxPackage /PackageName:Microsoft.WindowsCalculator_2018.702.514.0_neutral_~_8wekyb3d8bbwe
- php - 如何使用特定的 html 表设置 php
- angular - Angular 2 Select Label 占位符被覆盖
- c# - 当内容类型为application / x-www-form-urlencoded .net core时如何使用帖子数据
- c# - 无法从 Angular UI 发布到 ASP.NET WebApi
- php - 将 jQuery 值分配给 ajax susss 中的 PHP 变量
- ios - 通过 Cordova/Phonegap 应用程序创建一个可以由另一个应用程序 (ios) 打开的文件?