繁体   English   中英

熊猫:选择最后“N”列

[英]Pandas: Selecting last "N" columns

我有一个df ,我试图在其中选择列的后半部分(由于列数可变,因此无法选择按列标签进行选择)。

length = len(rec_df.columns)
print(length)
selection = rec_df.columns[-length/2:]
print(selection)

很明显,当我打印length ,我得到6 ,但是在使用length变量进行索引时出现错误。

但是,如果我只是更改-length/2: -> -3: ,它会起作用。 如何使其适用于可变length

在此先感谢您的帮助

切片索引必须是整数,试试这个:

length = int(len(rec_df.columns)/2)
print(length)
selection = rec_df.columns[-length:]
print(selection)

df.columns[len(df.columns) - n:]做你想要达到的目标吗? 由于您要求n列。

df = pd.DataFrame([range(6), range(6), range(6), range(6), range(6), range(6)], columns=['a', 'b', 'c', 'd', 'e', 'f'])
df
#   a  b  c  d  e  f
#0  0  1  2  3  4  5
#1  0  1  2  3  4  5
#2  0  1  2  3  4  5
#3  0  1  2  3  4  5
#4  0  1  2  3  4  5
#5  0  1  2  3  4  5

n = 2
df.columns[len(df.columns) - n:]
#Index([u'e', u'f'], dtype='object')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM