Python迭代.csv中的列

问题描述 投票:0回答:1

如何迭代不同编号的.csv中的列,对数据执行计算?这就是我所拥有的,问题是我真的不知道从哪里开始,所以我没有尝试过多,谷歌搜索没有帮助。

import pandas as pd
file = r'C:\Users\cmcgrath\...'

loopdata = pd.read_csv(file)
loopdata = pd.DataFrame(loopdata)
loopdata.index = loopdata['index']

for col in loopdata where i :
    print(loopdata.iloc[1])

我有一些更复杂的代码,我为另一个项目编写,但它没有比excel更好的工作,因为如果我添加或删除列,我必须手动更新它。一旦我弄清楚如何使用更基本的东西,那么我可以将其扩展到更复杂的逻辑。

A)如何循环冷却并创建一个新的数据框,其中每一行是单元格与其下方单元格之间的百分比变化?

B)如果数据帧具有不同的行数,我如何编写代码

谢谢,

查理

pandas
1个回答
0
投票

你可以使用.diff()功能。这给出了每行的下一行与行的值的百分比变化:

    df = pd.DataFrame({'col1':[1,5,9,14,15,16], 'col2':[2,22,33,54,66,77]})
    df.apply(lambda x: x.diff() / x)

      col1       col2
0      NaN        NaN
1   0.800000    0.909091
2   0.444444    0.333333
3   0.357143    0.388889
4   0.066667    0.181818
5   0.062500    0.142857
© www.soinside.com 2019 - 2024. All rights reserved.