Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/280.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 在dataframe中使用iloc获取列名_Python_Dataframe - Fatal编程技术网

Python 在dataframe中使用iloc获取列名

Python 在dataframe中使用iloc获取列名,python,dataframe,Python,Dataframe,是否有方法使用iloc或其他函数将列名作为值获取 我这里有一个for循环: for i in range(0,18): coef, pval = pearsonr(x.iloc[:,i],y) print('pval of ',x.iloc[?,i], ' and allStar: ', pval) 我想打印“列名和全明星的pval:pval” 是否有我可以替换的值?使用,以便获取每个列的列名?或者我必须使用另一个函数?您直接提出的问题的简短答案是使用 范围(0,18)内的i的

是否有方法使用iloc或其他函数将列名作为值获取

我这里有一个for循环:

for i in range(0,18):
    coef, pval = pearsonr(x.iloc[:,i],y)
    print('pval of ',x.iloc[?,i], ' and allStar: ', pval)
我想打印“列名和全明星的pval:pval”


是否有我可以替换的值?使用,以便获取每个列的列名?或者我必须使用另一个函数?

您直接提出的问题的简短答案是使用

范围(0,18)内的i的
:
coef,pval=pearsonr(x.iloc[:,i],y)
打印('pval of',x.columns[i],'和allStar:',pval)
一种更简洁的方法是简单地迭代列:

对于x列中的c:
coef,pval=pearsonr(x[c],y)
打印('pval of',c'和allStar:',pval)

奖金说明(主要是为了避免循环…)

  • 要使用
    y
    获得每列的相关系数(而不是pvalues),只需使用:
r=x.corrwith(pd.系列(y),轴=0)
  • 要获得对应于这些皮尔逊系数的p值,您可以直接计算它们,如下所示:
dist=scipy.stats.beta(n/2-1,n/2-1,loc=-1,scale=2)#n==len(y)

p=2*dist.cdf(-abs(r))#直接问题的简短答案是使用

范围(0,18)内的i的
:
coef,pval=pearsonr(x.iloc[:,i],y)
打印('pval of',x.columns[i],'和allStar:',pval)
一种更简洁的方法是简单地迭代列:

对于x列中的c:
coef,pval=pearsonr(x[c],y)
打印('pval of',c'和allStar:',pval)

奖金说明(主要是为了避免循环…)

  • 要使用
    y
    获得每列的相关系数(而不是pvalues),只需使用:
r=x.corrwith(pd.系列(y),轴=0)
  • 要获得对应于这些皮尔逊系数的p值,您可以直接计算它们,如下所示:
dist=scipy.stats.beta(n/2-1,n/2-1,loc=-1,scale=2)#n==len(y)

p=2*dist.cdf(-abs(r))#如果
x
是您的数据帧,请尝试将列名转换为列索引:

col_idx = x.columns.get_loc('column_name')

现在可以将此索引传递给
iloc
方法。

如果
x
是您的数据帧,请尝试将列名转换为列索引:

col_idx = x.columns.get_loc('column_name')

现在,该索引可以传递给iloc方法。

感谢Yaniv的奖金!真的很有帮助!感谢Yaniv的奖金!真的很有帮助!