是否有更好的方法将标签作为这些要素(列)的列表来获取,而这些要素(列)在数据框中没有单个缺失值?

时间:2018-06-28 14:18:14

标签: python-3.x pandas dataframe

我正在处理kaggle中的一些数据集。我想将所有列标签(功能)作为这些功能的列表使用,这些功能不包含单个缺失值

。我已经做到了(我是这样认为的),但我想知道是否有更好的方法来做到这一点。这是我的代码,结果是这些功能的列表,其中没有一个缺失值:

htmldocument.querySelector("dd[class='is24qa-kaufpreis']").innerText

例如,如果我运行以下代码:

    import matplotlib as plt
    data = pd.read_csv(r'C:\Users\.kaggle\house-prices\train.csv')
    result = data.isnull().sum(axis=0)[data.isnull().sum(axis=0) == 
    0].index.tolist()

我将得到以下结果:

    d = { 'Feature 1': [None, 1, 2, None ], 'Feature 2': [4, 5, 5, 6], 
    'Feature 3': [7, 7, 8, 9 ]}
    df = pd.DataFrame(data = d)
    print(df
    print(df.isnull().sum(axis=0)[df.isnull().sum(axis=0) == 
    0].index.tolist())

2 个答案:

答案 0 :(得分:2)

使用dropna并将列名称转换为list

print (df.dropna(axis=1).columns.tolist())
['Feature 2', 'Feature 3']

详细信息

print (df.dropna(axis=1))
   Feature 2  Feature 3
0          4          7
1          5          7
2          5          8
3          6          9

答案 1 :(得分:1)

notnull + all

df.notnull().all().loc[lambda x : x].index.tolist()
Out[449]: ['Feature 2', 'Feature 3']