Pandas Dataframe - 在特定行中选择具有特定值的列

我想在 Pandas Dataframe 的特定行(比如第一行)中选择具有特定值(比如 1)的列


拉风的咖菲猫
浏览 275回答 3
3回答

天涯尽头无女友

使用ilocwith boolean indexing,为了性能更好,index不过滤DataFrame然后选择索引(请参阅性能):df = pd.DataFrame({        'A':list('abcdef'),         'B':[4,5,4,5,5,4],         'C':[7,8,9,4,2,3],         'D':[1,3,5,7,1,0],         'E':[5,3,6,9,2,4],         'F':list('aaabbb')})print (df)   A  B  C  D  E  F0  a  4  7  1  5  a1  b  5  8  3  3  a2  c  4  9  5  6  a3  d  5  4  7  9  b4  e  5  2  1  2  b5  f  4  3  0  4  bs = df.iloc[0]        a = s.index[s == 1]print (a)Index(['D'], dtype='object')a = s.index.values[(s == 1)]print (a)['D']

精慕HU

你可以用这个df['a'][df['a']==0]

饮歌长啸

您可以使用iloc将一行提取为一个系列,然后应用您的条件:row = df.iloc[0]           # extract first row as seriesres = row[res == 1].index  # filter for values equal to 1 and get columns via index
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python