Python 3.x 熊猫为列名使用变量第2部分
给定以下数据帧:Python 3.x 熊猫为列名使用变量第2部分,python-3.x,pandas,Python 3.x,Pandas,给定以下数据帧: import pandas as pd import numpy as np df = pd.DataFrame({'A':[1,2,3], 'B':[4,5,6], 'C':[7,8,9], 'D':[1,3,5], 'E':[5,3,6], 'F':[7,4,3]}) df
import pandas as pd
import numpy as np
df = pd.DataFrame({'A':[1,2,3],
'B':[4,5,6],
'C':[7,8,9],
'D':[1,3,5],
'E':[5,3,6],
'F':[7,4,3]})
df
A B C D E F
0 1 4 7 1 5 7
1 2 5 8 3 3 4
2 3 6 9 5 6 3
如何将列名分配给变量以用于引用所述列名
例如,如果我这样做:
cols=['A','B']
cols2=['C','D']
然后我想做这样的事情:
df[cols,'F',cols2]
但结果是:
TypeError: unhashable type: 'list'
我认为您需要将F列添加到列表中: 或:
我认为您需要将F列添加到列表中: 或: 需要给出一个列的列表以供参考
In [48]: df[cols+['F']+cols2]
Out[48]:
A B F C D
0 1 4 7 7 1
1 2 5 4 8 3
2 3 6 3 9 5
并且,考虑使用DF.LOC [,CLS+['F'′+COLS2],DF.II[],COLS+['F'′+COLS2]切片。 需要提供一个包含列的列表以供参考
In [48]: df[cols+['F']+cols2]
Out[48]:
A B F C D
0 1 4 7 7 1
1 2 5 4 8 3
2 3 6 3 9 5
并且,考虑使用DF.LOC [,CLS+['F'′+COLS2],DF.II[],COLS+['F'′+COLS2]切片。 Python 3解决方案:
In [154]: df[[*cols,'F',*cols2]]
Out[154]:
A B F C D
0 1 4 7 7 1
1 2 5 4 8 3
2 3 6 3 9 5
Python 3解决方案:
In [154]: df[[*cols,'F',*cols2]]
Out[154]:
A B F C D
0 1 4 7 7 1
1 2 5 4 8 3
2 3 6 3 9 5
也许是打字错误?语法错误:语法无效,或者是我的python 2.7?或者是打字错误?SyntaxError:无效语法,或者可能是我的python 2.7?