【发布时间】: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']