2017-10-19 100 views
2

我有一個包含「pre_1,pre_2,pre_3等...」的列的數據框。我也有後標記數據爲「POST1,POST2,post3 ...等)。按列名稱設置數據框

有沒有用這個詞‘前’選擇所有列切片在Python數據?

感謝。

回答

0

您可以使用filterlikeregex關鍵字列名匹配的模式:

df = pd.DataFrame({ 
    'pre_1': [1,2], 
    'pre_2': [3,4], 
    'pre_3': [5,6], 
    'post1': [7,8], 
    'post2': [9,10], 
    'post3': [11,12] 
}) 

df 
#post1 post2 post3 pre_1 pre_2 pre_3 
#0 7  9  11  1  3  5 
#1 8  10  12  2  4  6 

要選擇個列在包含一個模式,使用like關鍵字:

df.filter(like='pre') 

#pre_1 pre_2 pre_3 
#0 1  3  5 
#1 2  4  6 

或者你可以使用正則表達式,下面將pre選擇列啓動(^):

df.filter(regex='^pre') 

#pre_1 pre_2 pre_3 
#0 1  3  5 
#1 2  4  6