当输入文件有时是.csv有时是.xls时,在文件中找到第一个换行符的最佳方法是什么?换行符是保证的,但是在读取文件时,换行符总是在随机行上。输入文件将有一定数量的行,总是在顶部。这个数据有一两行变化。所以我跳过前4 5 6,因为这种不可预测性。这里我的目标是将该点以外的数据读入DataFrame,跳过第一行。在第一个空白行之后的行是我将开始将数据读取到df
的地方。跳过可变行数的东西是我缺少的,我有一个识别文件类型的小函数,如果代码返回true,文件是xls文件如果返回false,文件是CSV文件。在下面的示例文件中,第一个空白行位于第7行。
1:这是永久的,我必须中断执行程序以退出。关键点是,当运行f.r edline()并逐行查看输出时,我注意到文件传递了空行,因为它不是预期的'n'
。相反,它总是像',,,,,,,,,,n'
一样,在我的许多csv文件中没有一致性。我怎样才能写一些东西来识别这是一个空白行,而不总是调整代码,以说明在CSV文件中的第一个空白行逗号的新数量?
import pandas as pd
file = 'input_file.csv'
f = open(file)
while f.readline() not in ('n'):
pass
final_df = pd.read_csv(f, header=None)
示例file
。
我认为处理这个问题最简单的方法,特别是考虑到您可能有csv或xls文件是读取数据并在之后清理它。像这样的东西可能会有所帮助,并且对两种格式都有效:
df = pd.read_excel(file)
new_line = min(df[df.iloc[:,0].isnull()].index)
df.columns = df.iloc[new_line+1]
df = df.iloc[new_line+2:, :]
实际上您读取整个文件,找到第一个空行,并从"new_line"开始重建数据帧。
相关内容
- 没有找到相关文章
最新更新
- 如何对包含句点(.)的关键字进行语法高亮显示?
- 属性图像 URL 在类型 {} 上不存在
- 写一个约束来强制一个值至少出现一次
- 基于锚展开手风琴
- React+Jest:每当我试图访问DOM属性(即:toHaveStyle)时,测试将永远挂起
- 如何在WPF中显示数据网格中的用户输入?
- 如何在特定端口运行mongo docker实例
- 匕首柄-碎片绑定为空?
- 在flask中使用WTFORMS和SQAlchemy更新值
- 不等式运算符无法解析boolean和int数据类型
- GSUB替换3个或更多的重复字符
- 如何使用新的RenderEffect库模糊视图?
- Oracle 19c upgrade: JDBC error java.sql.SQLRecoverableExcept
- 如何找到和解析行在文本文件开始与某些文本?
- 入口:目录级别参数
- 我如何重构下面的代码,以允许我在chatGPT中生成连贯和流畅的文档?
- 在typescript中添加eventlistener到nodelist
- c -为什么我的内核崩溃时,我添加更多的参数到一个函数?
- MySQL表锁和Next-Key lock的行锁有什么区别?
- 如何在不打开电子邮件应用程序的情况下从锚标记中抓取电子邮件id
- PHP和OCI8在连接时产生HTTPd Segmentation Fault(不是每次)
- 将一个仅包含正数据的列表归一化为包含负值和正值的范围
- 当使用Link导航时,带有next-redux-wrapper状态的 Next.js被重置为初始值
- 在c#中从url字符串中获取数字部分
- r语言 - 合并没有重复行和NA值的数据帧
- Minecraft Bukkit -右键单击村民时自定义GUI
- 如何检查datetime列中缺少哪些值
- 在多个相似目录中执行bash
- Laravel 8和Backblaze B2 CURL错误无法解析主机
- Puppeteer UnhandledPromiseRejectionWarning
热门标签:
javascript python java c# php android html jquery c++ css ios sql mysql arrays asp.net json python-3.x ruby-on-rails .net sql-server django objective-c excel regex ruby linux ajax iphone xml vba spring asp.net-mvc database wordpress string postgresql wpf windows xcode bash git oracle list vb.net multithreading eclipse algorithm macos powershell visual-studio image forms numpy scala function api selenium