2016-09-26 67 views
0

我有一個DataFrame與索引SubjectID兩列與整數值。我只想保留在Value 1列和Value 2列中具有值的主題,並且擺脫僅具有一個值的主題。熊貓只保留索引與列中的值

這裏是我的數據幀的例子:

SubjectID Value1 Value2 
B1   1.57  1.75 
B2   N/A  1.56 

所以我只是想保持第一排。這是迄今爲止我所編寫的代碼:

df_to_add = [] 
for sub in df.index: 
    values = df.loc[df.index]['Value1']['Value2'] 
    if type(values) is pd.Series: # check that subject had multiple values, don't want otherwise 
     array = values.values 
     if "'Value1'" in scans_array and "'Value2'" in array: 
      df_to_add.append(df.loc[df.index]) 
    else: 
     pass 

回答

2

假設你N/A是一個實際的NaN,你可以簡單地.dropna()您的數據框:

import pandas as pd 

df = pd.DataFrame({'SubjectID': ['B1', 'B2'], 
        'Value1': [1.57, float('nan')], 
        'Value2': [1.75, 1.56]}) 
df = df.set_index('SubjectID') 

print(df) 
#   Value1 Value2 
# SubjectID     
# B1   1.57 1.75 
# B2   NaN 1.56 

print(df.dropna()) 
#   Value1 Value2 
# SubjectID     
# B1   1.57 1.75 
+0

雅,最好是+1 – jezrael

+0

是啊,這真是棒極了非常感謝! – MScar