熊猫读取后,删除CSV文件中的行

时间:2019-06-08 15:45:33

标签: python pandas csv

因此,我想让1个脚本连续写入CSV文件,并让另一个脚本定期从同一CSV文件读取。

我正在寻找的是一种删除刚刚从CSV文件(而不是从熊猫数据框)中读取的行的方法。

有人可以帮忙吗?

# Read data in to dataframe
deviceInfo = pd.read_csv("sampleData.csv", nrows = 100)

# Somehow delete those 100 rows from the CSV file

2 个答案:

答案 0 :(得分:1)

@JoseAngelSanchez是正确的,您可能想将整个csv读入一个数据帧,但是我认为这种方式可以让您获得前100行的数据帧,并且仍将其从csv中删除文件。

import pandas as pd
df = pd.read_csv("sampleData.csv")

deviceInfo = df.iloc[:100]

df.iloc[100:].to_csv("sampleData.csv")

请注意:如果您要重复执行此操作,则可能需要编写to_csv(...,index=None),否则每次迭代都会在.csv文件中创建一个新的索引列。

答案 1 :(得分:0)

您应该阅读整个文档,然后删除不需要的行

import pandas as pd 
df = pd.read_csv("sampleData.csv")

df = df.iloc[100:]

df.to_csv("sampleData.csv")