[英]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.