我有一个python pandas变量赋值的问题:我有一个像
这样的元组asd=('prostate1.csv','dtime','status1','age','hg','sz','sg','pf','rx')
读取文件就可以了:
prostate_dataset=pd.read_csv(asd[0])
但是修剪数据集不能无缝地工作:
prostate_dataset=prostate_dataset[[for x in asd[1:]]]
我想得到的是这样的:
prostate_dataset=prostate_dataset[[asd[1],asd[2],asd[3],asd[4],asd[5],asd[6],asd[7],asd[8]]]
我试过:
act='',''.join(asd[1:])
prostate_dataset=prostate_dataset[[act]]
但是它不起作用,因为反斜杠符号仍然包含
Thanks in advance
把它变成一个列表来过滤df:
prostate_dataset=prostate_dataset[list(asd[1:])]
应该工作:
In [157]:
asd=('prostate1.csv','dtime','status1','age','hg','sz','sg','pf','rx')
list(asd[1:])
Out[157]:
['dtime', 'status1', 'age', 'hg', 'sz', 'sg', 'pf', 'rx']
这里要理解的是,您对元组的切片将返回具有切片范围内值的元组,但要对df进行索引,您应该传递您感兴趣的列名列表。