Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 迭代,通过熊猫计算_Python_Pandas_For Loop_If Statement_Iteration - Fatal编程技术网

Python 迭代,通过熊猫计算

Python 迭代,通过熊猫计算,python,pandas,for-loop,if-statement,iteration,Python,Pandas,For Loop,If Statement,Iteration,我是Python新手,我想问一些问题 我的代码读取csv文件。我想用一列。我想使用一个等式,它根据我想使用的列的值计算几个值。我正在为和if使用命令 我的代码 import pandas as pd import matplotlib as mpl import numpy as np dfArxika = pd.read_csv('AIALL.csv', usecols=[0,1,2,3,4,5,6,7,8,9,10], header=None, index_col=False) print

我是Python新手,我想问一些问题

我的代码读取csv文件。我想用一列。我想使用一个等式,它根据我想使用的列的值计算几个值。我正在为和if使用命令

我的代码

import pandas as pd
import matplotlib as mpl
import numpy as np

dfArxika = pd.read_csv('AIALL.csv', usecols=[0,1,2,3,4,5,6,7,8,9,10], header=None, index_col=False)
print(dfArxika.columns)

A=dfArxika[9]

for i in A:
    if (A(i)>=4.8 and A(i)<66):
        IA=(2.2*log10(A(i)/66)+5.5)
    elif A(i)>=66:
        IA=3.66*log10(A(i)/66)+5.5
    else:
        IA=2.2*log10(A(i)/66)+5.5
将熊猫作为pd导入
将matplotlib导入为mpl
将numpy作为np导入
dfArxika=pd.read_csv('AIALL.csv',usecols=[0,1,2,3,4,5,6,7,8,9,10],header=None,index_col=False)
打印(dfArxika.columns)
A=dfArxika[9]
对于我来说,在一个:
如果(A(i)>=4.8且A(i)=66:
IA=3.66*log10(A(i)/66)+5.5
其他:
IA=2.2*log10(A(i)/66)+5.5
但命令窗口向我显示了错误:

TypeError:“Series”对象不可调用


您能帮助我吗?

正如注释中提到的@rdas,您正在使用括号
()
而不是括号
[]
来索引列的值

我不确定您的示例中的
IA
是什么,但这可能有效:

for i in range(len(dfArxika)):
    if (A.loc[i, 9]>=4.8 and A.loc[i, 9]<66):
        IA=(2.2*log10(A.loc[i, 9]/66)+5.5)
    elif A.loc[i, 9]>=66:
        IA=3.66*log10(A.loc[i, 9]/66)+5.5
    else:
        IA=2.2*log10(A.loc[i, 9]/66)+5.5
范围内i的
(len(dfArxika)):
如果(A.loc[i,9]>=4.8和A.loc[i,9]=66:
IA=3.66*log10(A.loc[i,9]/66)+5.5
其他:
IA=2.2*log10(A.loc[i,9]/66)+5.5

A(i)
不是索引的方式。它是
A[i]
命令窗口显示:TypeError:无法使用这些索引器进行标签索引[122.59],您正在迭代
dfArxika[9]
的值,并使用它们来索引数据帧A。
dfArxika[9]
,包含浮点数,而数据帧
A
的索引包含整数,这就是为什么会出现错误。