python熊猫:如何在日期框中删除项目
我的日期框中有大量的点,所以我想删除其中的一些点(理想情况下保持平均值) e、 目前我有python熊猫:如何在日期框中删除项目,python,pandas,numpy,Python,Pandas,Numpy,我的日期框中有大量的点,所以我想删除其中的一些点(理想情况下保持平均值) e、 目前我有 date calltime 0 1491928756414930 4643 1 1491928756419607 166 2 1491928756419790 120 3 1491928756419927 142 4 1491928756420083 121 5 1491928756420217 109 6
date calltime
0 1491928756414930 4643
1 1491928756419607 166
2 1491928756419790 120
3 1491928756419927 142
4 1491928756420083 121
5 1491928756420217 109
6 1491928756420409 52
7 1491928756420476 105
8 1491928756420605 35
9 1491928756420654 120
10 1491928756420787 105
11 1491928756420907 93
12 1491928756421013 37
13 1491928756421062 112
14 1491928756421187 41
根据抽样情况,有没有办法减少一些物品的数量
提供更多细节。我的问题是非常接近间隔的值的数量,例如1491928756421062和1491928756421187
所以我有一张像这样的图表
相反,我想知道这些紧密间隔的平均值。但可能是按秒分组…我会使用sample()
,但正如您所说,它随机选择。如果要根据某些逻辑进行采样,例如,仅保留值为mean*.9
的行,可以尝试以下代码。实际上,这完全取决于您的采样策略
举个例子,类似的事情是可以做到的
test.csv:
1491928756414930,4643
1491928756419607,166
1491928756419790,120
1491928756419927,142
1491928756420083,121
1491928756420217,109
1491928756420409,52
1491928756420476,105
1491928756420605,35
1491928756420654,120
1491928756420787,105
1491928756420907,93
1491928756421013,37
1491928756421062,112
1491928756421187,41
抽样:
df = pd.read_csv("test.csv", ",", header=None)
mean = df[1].mean()
my_sample = df[(mean *.90 < df[1]) & (df[1] < mean * 1.10)]
df=pd.read\u csv(“test.csv”,“test.csv”,“header=None”)
平均值=df[1]。平均值()
我的样本=df[(平均值*.90
您正在寻找的
这是一个更完整的例子
tidx = pd.date_range('2000-01-01', periods=10000, freq='10ms')
df = pd.DataFrame(dict(calltime=np.random.randint(200, size=len(tidx))), tidx)
fig, axes = plt.subplots(2, figsize=(25, 10))
df.plot(ax=axes[0])
df.resample('s').mean().plot(ax=axes[1])
fig.tight_layout()
dateframe有一个sample()方法,它对您不起作用吗?嗯。。样本给出随机值。我又不是在贬低价值你在找什么样的样品?是否有要删除值的条件?
tidx = pd.date_range('2000-01-01', periods=10000, freq='10ms')
df = pd.DataFrame(dict(calltime=np.random.randint(200, size=len(tidx))), tidx)
fig, axes = plt.subplots(2, figsize=(25, 10))
df.plot(ax=axes[0])
df.resample('s').mean().plot(ax=axes[1])
fig.tight_layout()