我是python新手,但我还没有找到解决这一挑战的方法。我有每个医院不同变量的数据。现在,我确实想计算每个变量的缺失数据总量,并用百分比表示每个医院的缺失数据量。下面是dataframe的外观:
import pandas as pd
df = pd.DataFrame([('Jorh Hospital','2018-03-15', 389.0,34, 32, 34),
('Jorh Hospital','2018-04-20', np.nan,22, 5, 43),
('Bugh Hospital','2019-02-16', 80.5,np.nan, 56, np.nan),
('Bugh Hospital','2019-06-23', np.nan,89, 67, np.nan)],
columns=('Hosp_name','date', 'max_rec', 'reg_pp', 'disch_no', 'temp_rec'))
df
现在我们有从不同医院收集的变量,我想为每个医院计算每个变量的NaNs。在最后一个表中,我必须将医院设置为列,将变量设置为行
df.isna().sum()
我无法从这里开始,这是我想要的最终结果
dff = pd.DataFrame([('max_rec','50% (1)', '50%(1)'),
('reg_pp','100%(0)', '50%(1)'),
('disch_no','100%(0)', '100%(0)'),
('temp_rec','100%(0)', '0')],
columns=('variables','Jorh Hospital (N=2)', 'Bugh Hospital (N=2)'))
dff
请注意在最后一个表格中,我需要在百分比中表示缺失值,但仍然要给出缺失值的数量,该列有N来表示特定医院中每个变量的行总数
通过对输出进行一些修改,这应该可以工作:
输出:
相关问题 更多 >
编程相关推荐