|
|
成熟的匕首 · dqn不收敛一直震荡怎么办 - CSDN文库· 10 月前 · |
|
|
老实的松鼠 · Android模拟器不再考虑在笔记本触摸屏上 ...· 1 年前 · |
|
|
聪明伶俐的勺子 · 海康威视工业相机海康机器人 ...· 2 年前 · |
|
|
曾深爱过的蛋挞 · usestate 数组删除-掘金· 2 年前 · |
|
|
成熟的单杠 · 如何使用dplyr ...· 2 年前 · |
我很难弄清楚如何在csv文件中跳过n行,但保留头1行。
我想要做的是迭代,但保留第一行的标题。
skiprows
使标题位于跳过的行之后的第一行。做这件事的最好方法是什么?
data = pd.read_csv('test.csv', sep='|', header=0, skiprows=10, nrows=10)
为了扩展@AlexRiley的答案,
skiprows
参数接受一个数字列表,该列表确定要跳过哪些行。所以:
pd.read_csv('test.csv', sep='|', skiprows=range(1, 10))
与以下内容相同:
pd.read_csv('test.csv', sep='|', skiprows=[1,2,3,4,5,6,7,8,9])
忽略特定行的最好方法是创建忽略列表(手动创建,或者使用返回整数列表的
range
之类的函数)并将其传递给
skiprows
。
如果你正在迭代一个很长的csv文件,你可以使用 chunksize 参数。如果出于某种原因,您需要手动执行单步执行,只要您知道需要执行多少次迭代,就可以尝试执行以下操作:
for i in range(num_iters):
pd.read_csv('test.csv', sep='|', header=0,
skiprows = range(i*10 + 1, (i+1)*10), nrows=10)
答案已经很不错了。考虑一下这个通用的场景:
假设您的xls/csv在顶部2行(第0,1行)中有垃圾行。第2行(第3行)是真正的标题,您希望从第50行(即第51行)开始加载10行。
下面是代码片段:
pd.read_csv('test.csv', header=2, skiprows=range(3, 50), nrows=10)
如果您需要跳过/删除特定的行,例如前3行(即0,1,2),然后再跳过2行(即4,5)。您可以使用以下命令保留标题行:
df = pd.read_csv(file_in, delimiter='\t', skiprows=[0,1,2,4,5], encoding='utf-16', usecols=cols)
Copyright © 2013 - 2023 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号: 粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
扫码关注腾讯云开发者
领取腾讯云代金券