在python中删除CSV文件的特定行

在python中删除CSV文件的特定行,python,pandas,csv,Python,Pandas,Csv,我有一个CSV文件,我想根据其中一列的值删除其中的一些行。我不知道删除CSV文件中特定行的相关代码,该文件的类型为pandas.core.frame.DataFrame 我阅读了相关的问题,发现人们建议在一个新文件中写下每一行可以接受的内容。我不想那样做。我想要的是: 1) 删除我知道的行的索引(行数) 或 2) 要在python内存中创建一个新的CSV(而不是编写并再次读取它)下面是一个使用熊猫的示例。如果您需要更多详细信息,您可能会找到一个有用的资源 import pandas as pd

我有一个CSV文件,我想根据其中一列的值删除其中的一些行。我不知道删除CSV文件中特定行的相关代码,该文件的类型为
pandas.core.frame.DataFrame

我阅读了相关的问题,发现人们建议在一个新文件中写下每一行可以接受的内容。我不想那样做。我想要的是:

1) 删除我知道的行的索引(行数)


2) 要在python内存中创建一个新的CSV(而不是编写并再次读取它)

下面是一个使用熊猫
的示例。如果您需要更多详细信息,您可能会找到一个有用的资源

import pandas as pd
from io import StringIO

mystr = StringIO("""speed,time,date
12,22:05,1
15,22:10,1
13,22:15,1""")

# replace mystr with 'file.csv'
df = pd.read_csv(mystr)

# convert time column to timedelta, assuming mm:ss
df['time'] = pd.to_timedelta('00:'+df['time'])

# filter for >= 22:10, i.e. second item
df = df[df['time'] >= df['time'].loc[1]]

print(df)

   speed     time  date
1     15 00:22:10     1
2     13 00:22:15     1

你能告诉我们你的数据是什么样子的,以及你希望它在你的操作后是什么样子的吗?几行(~5行)就足够了。谢谢,补充到问题的主体。我想你是说时间大于等于22:05?否则将删除输出的第一行。是。我只想要时间大于阈值的行,比如22:05。我知道如何检测它们,我不知道如何删除它们。非常好,谢谢。如果您能让我知道如何在一个循环中向mysrt添加数据,我将不胜感激。我的意思是,在循环中,我检测哪些行是可以接受的。现在,我想在该循环中将可接受的数据添加到mystr中。@ReihanehKouhi,假设没有
mystr
,这是我的注释
#用“file.csv”替换mystr