如何从导入的CSV文件中的所有值中减去一个值?

2024-04-23 22:52:40 发布

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

我在一个CSV文件中读取了一列。该列包含几乎300行不同的值。我想从这些值中减去某个值b=0.157。这些新的大约300个值应保存在新的CSV文件(数组)中。我该怎么做

这是csv文件:wearable.csv

    right,
    0.960, 
    1.079, 
    1.019, 
    1.028, 
    1.086, 
    1.042, 
    .....
    .....
    .....

我在csv文件中读取的代码部分: wearable = pd.read_csv("wearable.csv")

现在我想从csv文件中的所有值中减去b。这样我就得到了保存在新CSV文件中的新值。我怎样才能到达这里?有人能给我解释一下吗?多谢各位

最终结果(新的CSV文件)应如下所示:

可穿戴\u new.csv

right,
0.803,
0.922,
0.862,
0.871,
0.929,
0.885,
.....
.....
.....

也许我得做一个for-loop。也许有人能给我解释一下怎么做。非常感谢

编辑 我不明白这个问题为何被终结。在问题结束之前,我已经收到(见下文)我的问题的答案。这个答案也帮助了我。我不需要另一个


Tags: 文件csv答案代码rightloopnewfor
1条回答
网友
1楼 · 发布于 2024-04-23 22:52:40

您可以使用numpypandas基于numpy数组)的broacast属性,只需从数据帧中减去一个常量值

编辑:添加要保存到文件的零件

import pandas as pd
import numpy as np

b = 0.157
df = pd.DataFrame({'right': np.linspace(0, 1, 5)})

df

    right
0   0.00
1   0.25
2   0.50
3   0.75
4   1.00

df - b


    right
0   -0.157
1   0.093
2   0.343
3   0.593
4   0.843

(df - b).to_csv('/path/output.csv', index=False, line_terminator = ',\n')

相关问题 更多 >