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.
非常感谢你。非常感谢。