以漂亮的方式打印pandas索引

时间:2017-08-10 10:11:42

标签: python pandas scikit-learn

print('Selected Features are {}'.format([X.columns[l1_rfe.get_support()]]))

给出

Selected Features are [Index([u'number_of_reviews', u'Occupations_art_culture_CSD',
   u'Occupations_natural_resources_CSD', u'Average_income_2005_CSD',
   u'Airport_id', u'Visitor_centre_id', u'City_Pop_2000',
   u'First_responder_id_ambulance', u'First_responder_id_fire',
   u'First_responder_lat_fire', u'events_10km', u'casinos_10km',
   u'transportation_10km', u'food_drinks_10km', u'boat_tours_10km'],
  dtype='object')]

有什么方法可以让这个结果更漂亮吗? get_support来自sklearn.feature_selection.RFECV,如果这对您很重要。

2 个答案:

答案 0 :(得分:0)

以下是使用get_values()

的一种方法

为了让事情再现,让我们来看看这个df:

df1 = pd.DataFrame(np.random.randn(6,4),
                     index=list('abcdef'),
                     columns=list('ABCD'))

         A         B         C         D
a -0.168137  0.064138 -0.278186  0.069164
b  1.336853 -1.366735 -0.932872 -0.068140
c  0.986338 -0.253487 -2.069040 -0.017315
d -0.249902  0.597127 -0.079737 -1.128560
e -0.422776  1.497260 -0.774697 -0.593360
f  1.161005 -1.174774 -0.719904  0.634449

印刷:

In [20]: print('Features are: {}'.format([i for i in df1.index.get_values()]))
Features are: ['a', 'b', 'c', 'd', 'e', 'f']

答案 1 :(得分:0)

这一切都取决于你更漂亮的意思,但如果是我,我会将这个索引转换为一个列表,然后转换为字符串(立即转换为字符串离开"索引元数据"到被删除,删除括号,unicode标记(使用正则表达式)和引号,然后按照我喜欢的方式格式化(可能在每个元素后添加\ n)。您可能也想使用pprint。