Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python中仅具有空值的列的数据类型_Python_Pandas - Fatal编程技术网

python中仅具有空值的列的数据类型

python中仅具有空值的列的数据类型,python,pandas,Python,Pandas,我只需要找出空值列的数据类型 df.columns[df_test.isnull().sum()>0] 正在给我一个列列表,其中包含空值,但我需要一个包含数据类型的列列表 你能帮忙吗 import pandas as pd for x in df: if df[x].isna().any(): print(df[x].dtype) 也就是说,如果列包含一个空值。如果仅在列中的所有值都为null时才需要数据类型,则可以执行以下操作 作为pd进口熊猫 for x

我只需要找出空值列的数据类型

df.columns[df_test.isnull().sum()>0] 
正在给我一个列列表,其中包含空值,但我需要一个包含数据类型的列列表

你能帮忙吗

import pandas as pd

for x in df:
    if df[x].isna().any():
        print(df[x].dtype)
也就是说,如果列包含一个空值。如果仅在列中的所有值都为null时才需要数据类型,则可以执行以下操作

作为pd进口熊猫

for x in df:
    if df[x].isna().all():
        print(df[x].dtype)

根据我的理解,您可以直接使用
loc
,而无需使用任何循环

df_test.loc[:,df_test.isnull().sum()>0].dtypes
下面是一个例子:

df = pd.util.testing.makeMissingDataframe().fillna({"A":0}).head(5)
print(df)
         A         B         C         D
UxNqePUQXH  0.449476  0.713696  1.255964 -0.458908
qBsuuVjimE  0.840831  0.439097  1.073890  1.252807
ptZvWjEdUV  0.377418  0.061335  0.960726  1.140141
LO54c7vqq1 -1.708196 -0.483487  0.831404       NaN
Pc7I7gTRZY       NaN -1.400275  0.045297 -0.322303

>>df.loc[:,df.isnull().sum()>0].dtypes

C    float64
D    float64
dtype: object
请注意,您还可以浏览任何:

df_test.loc[:,df_test.isnull().any()].dtypes.

非常感谢你。非常感谢。