遍历熊猫数据框中的列
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)
输出:
【讨论】:
以上是关于遍历熊猫数据框中的列的主要内容,如果未能解决你的问题,请参考以下文章