删除 Pandas 中的第 n 行

Removing nth row in Pandas

我有一个 Pandas df,其时间序列为 34 毫秒,我只需要 5 秒的分辨率。我最初创建了一个时间戳并尝试将时间戳设置为索引并重新采样和 .iloc。

# Defining file path
file = "C:/file/path/data.csv"

# Read in data and parse date/time to DateTime format
data = pd.read_csv(file,header=10,parse_dates=[[0,1]],dayfirst=False)

# time stamp in preferred format
data['date_stamp'] = pd.to_datetime(data['Date_ Time'],dayfirst=False)

#trying to get every 5 seconds, not 34 milliseconds
data.iloc[::15,:]

# saving new file to csv
data.to_csv(""C:/file/path/data.csv"",date_format='%Y%m%d %H:%M:%S')

最好做一个时间索引并重新采样吗?此代码始终 returns df 中的相同数据。将此数据压缩为 5 秒间隔的最佳方法是什么?

我想你可以使用 resample with first:

data.set_index('date_stamp', inplace=True)
print (data.resample('5S').first())

docs

如果使用较旧的 pandas 作为 0.18.0:

print (data.resample('5S', how='first'))