如何在pandas中对数据帧中的数据进行存储

2024-04-25 14:58:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个时间序列数据,说机器读数如下(说)

df['machine_r'] = [1,2,1,5,3,4,5,1,2,3,4,5,7,8,1,2.....] 

如何改变数据帧如下所示

^{pr2}$

我试过了

p25 = df['machine_r'].quantile(0.25)  ## p25 is 25 percentile 
p50 = df['machine_r'].quantile(0.5)
p75 = df['machine_r'].quantile(0.8)
p100 = df['machine_r'].quantile(1)
bins = [-100,p25,p50,p75,p100]
labels = [0.25, 0.5,0.75,1]
df['machine_r'] = pd.cut(df['copper'], bins=bins,labels=labels)

但它返回0,0.25,0.5,0.75,1作为分类值,但我需要它们作为float进行进一步分析。怎么能做到呢?在


Tags: 数据机器dflabels时间序列machine读数
1条回答
网友
1楼 · 发布于 2024-04-25 14:58:45

您可以通过^{}将其强制转换为float:

df['new'] = pd.cut(df['machine_r'], bins=bins,labels=labels).astype(float)

更好的方法是使用^{},就像前面提到的Sandeep Kadapa

^{pr2}$

相关问题 更多 >