处理数据帧中的数值类Range数据

2024-10-03 00:24:18 发布

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

我有一个数据帧,它的值像1,362 - 2,037,首先,我如何清理它们?比如获取这两个数字的平均值(10 - 2015),规范化它们还是其他什么?第二,如何删除所有行中的1,3621362中的逗号

目前有:

^{tb1}$

预期输出:

(平均值、标准化等)

^{tb2}$

数据帧的形状:

df = pd.read_csv("/content/cleanedNASA.csv")
df.describe
...
> [31 rows x 9 columns]

谢谢


Tags: csv数据dfread数字content规范化平均值
1条回答
网友
1楼 · 发布于 2024-10-03 00:24:18
df['y'] = pd.to_numeric(df['x']
    .str.replace('[^0-9\- ]', '') # 1. remove non-(digit/dash/space) characters
    .str.split(' - ')             # 2. split by ' - '
    .explode()                    # 3. explode the lists
).mean(level=0)                   # 4. calculate average by index

df

输出:

               x     y
0    402 - 1,120   761
1            674   674
2          3,196  3196
3          1,304  1304
4            853   853
5  1,361 - 2,037  1699

相关问题 更多 >