Python 基于条件删除/重采样数据帧行

Python 基于条件删除/重采样数据帧行,python,pandas,Python,Pandas,我有一个数据框,代表一些测量值 第一列表示增量非常小的连续变量0.1或0.2 我需要每隔1个增量对这个变量(以及整个数据帧)重新采样 0 494.84284 1 494.86824 2 494.89364 3 494.91904 4 494.94444 5 494.96984 6 494.99524 7 495.02064 8 495.04604 9 495.07144 10 495.09684 11 4

我有一个数据框,代表一些测量值 第一列表示增量非常小的连续变量0.1或0.2 我需要每隔1个增量对这个变量(以及整个数据帧)重新采样

0     494.84284
1     494.86824
2     494.89364
3     494.91904
4     494.94444
5     494.96984
6     494.99524
7     495.02064
8     495.04604
9     495.07144
10    495.09684
11    495.12224
12    495.14764
13    495.17304
14    495.19844
15    495.22384
16    495.24924
17    495.27464
18    495.30004
19    495.32544
20    495.35084
21    495.37624
22    495.40164
23    495.42704
24    495.45244
25    495.47784
26    495.50324
27    495.52864
28    495.55404
29    495.57944
我尝试将此列设置为索引,并运行下面的代码,但没有成功

row_init = 0.0
for index, row in df.iterrows(): 
    if (index - row_init) < 1:
        #print (index)
        df.drop(index, inplace=True)
        row_init = index
        #print (row_init)

Example output:
0     494.84284
1     495.02064
2     496.47784
3     497.50324
4     498.52864
5     499.55404
6     500.57944
row_init=0.0
对于索引,df.iterrows()中的行:
如果(索引-行_init)<1:
#打印(索引)
df.drop(索引,就地=真)
行_init=索引
#打印(第一行)
示例输出:
0     494.84284
1     495.02064
2     496.47784
3     497.50324
4     498.52864
5     499.55404
6     500.57944

看起来您只需要每个整数的第一个值,因此您可以按整数值分组并取第一个

df = pd.DataFrame({'data':[494.84284,494.86824,494.89364,494.91904,494.94444,494.96984,494.99524,495.02064,495.04604,495.07144,495.66072,496.01247,497.5000,497.9777,500.01354]})

df.groupby(df['data'].astype(int)).first().reset_index(drop=True)
输出

         data
0   494.84284
1   495.02064
2   496.01247
3   497.50000
4   500.01354

请发布数据本身,而不是它的照片,并显示一些您希望它看起来像的示例输出。谢谢,这非常有用,是否可以将增量增加到2或3?这似乎回答了您最初的问题。也许将其标记为答案,然后发布另一个带有新要求的答案?