遍历熊猫数据框中的列

Posted

技术标签:

【中文标题】遍历熊猫数据框中的列【英文标题】:Iterate through the column in padas dataframe 【发布时间】:2021-11-09 12:54:17 【问题描述】:

我有一个 CSV 文件,我试图通过将“a”列的每个值与“b”列的每个值相乘来计算该值。我已经写下了一段代码,但现在它一次只能乘以一个特定的值。例如,目前,我的代码通过迭代分子中“a”列的值然后将其除以“b”列的第一个值与所有值的乘积来打印列“a”的第一个值的乘积“b”列的值,我必须对“a”列的其他值再次重复该过程。我是 python 的新手,谁能建议我如何以正确的方式实现我的代码以一次迭代它们?首先它取“a”列的第一个值,然后用“b”列的所有值计算解,然后取“a”列的第二个值,然后重复该过程,直到它达到最后一个值“a”列。数据如下所示:

import csv
import pandas as pd
data = pd.read_csv("/home/Documents/test.csv")

for num in data.columns[0]:
    for den in data.columns[1]:
        x = (((data.at[0,'a'])*data[num]))/((data.at[0,'b'])*data[den])
print(x)

输出如下:

【问题讨论】:

不需要循环,直接做df['a']/df['b'] 这能回答你的问题吗? How to divide two columns element-wise in a pandas dataframe 【参考方案1】:

您也可以尝试列索引。 这是解决方案。

result = df['a']/df['b']

这将对所有列值进行操作。

然后就可以打印结果了

print(result)

输出:

【讨论】:

以上是关于遍历熊猫数据框中的列的主要内容,如果未能解决你的问题,请参考以下文章

如何从熊猫数据框中的列中删除字符串值

遍历熊猫数据框中的列

从熊猫数据框中的地址中删除分数

确定熊猫数据框中的列值何时更改

如何在熊猫数据框中的所有列中搜索模式,并在找到时将其复制到另一列

如何摆脱我们熊猫数据框中的相等列?