如何计算每列的空值以及在pandas数据帧中查找百分比



所以我有一个从csv文件中读取的数据帧,并将其分配给"ski_data"。

我只是对指示的措辞有点困惑。上面写着:

计数(使用.sum(((丢失值的数量(.isnull(((在ski_data的每一列中作为百分比(使用.mmean((而不是.sum(((,并使用sort_values对其进行排序。

调用pd.concat以在一个表(DataFrame(中显示这些列,并使用有用的列名"count"one_answers"%">

我要做的唯一方法是将ski_data复制到一个新的df中,但现在的问题是我有了一个新数据帧,在转换它之后,新数据帧将每列的名称作为索引,并有一个与它所具有的空值数量相对应的数字。此外,我不知道如何像问题所问的那样计算平均值,因为它假设我可以把它全部写进一行。

我认为这在很大程度上是一个语法问题,尽管我在网上找不到任何有用的资源。想知道是否有人能帮忙。

你可以试试这个:

import pandas as pd
# Toy dataframe
ski_data = pd.DataFrame(
{
"A": [1, 1, 1],
"B": [2, 2, None],
"C": ["markers", "", "markers"],
"D": [None, 2, None],
"E": [4, "", 4],
}
)
counts = ski_data.isna().sum()
print(counts.sort_values())
# Outputs
A    0      
C    0      
E    0      
B    1      
D    2
percentages = round(ski_data.isna().mean() * 100, 1)
print(percentages.sort_values())
# Outputs
A     0.0     
C     0.0     
E     0.0     
B    33.3     
D    66.7
null_values = pd.concat([counts, percentages], axis=1, keys=["count", "%"])
print(null_values)
# Outputs
count     %
A      0   0.0
B      1  33.3
C      0   0.0
D      2  66.7
E      0   0.0

相关内容

最新更新