Python 是否删除Pandas中哪些单元格为空的行?

Python 是否删除Pandas中哪些单元格为空的行?,python,pandas,Python,Pandas,谢谢你的帮助 我有一个很大的csv伪ODO患者数据集,通常看起来是这样的 Average Covered Charges , Total Discharges , Average Medicare Payments 32963.07 , 91 , 4763.73 15131.85 , 14 , 4976.71

谢谢你的帮助

我有一个很大的csv伪ODO患者数据集,通常看起来是这样的

 Average Covered Charges ,  Total Discharges  , Average Medicare Payments
        32963.07         ,          91        ,           4763.73 
        15131.85         ,          14        ,           4976.71 
        37560.37         ,                    ,          
我面临的问题是,我正试图让出院总人数超过100。。。但是,因为其中一列的末尾比所有其他单元格多出一个值,所以其他列的最后一个单元格只有一个空格,在数据集的长度中被视为一项。我已将此csv文件加载到熊猫数据框中,并删除了NAs,我的数据集仍然是这样

所以没有,没有,等等。。。这不是问题所在。它是一个空单元格,使最后两列的数据类型为“object”,由于它有一个空单元格/空格,因此无法将“object”数据类型更改为“int”

若我可以通过删除数据集中任何列中有空单元格的所有行,将数据框更改为这样,那个么我的所有问题都将消失。因此,我希望我的数据集如下所示:

 Average Covered Charges  , Total Discharges  , Average Medicare Payments
        32963.07          ,          91       ,           4763.73 
        15131.85          ,          14       ,           4976.71 
我很惊讶我这么难做到这一点。但从我所读到的关于熊猫的资料来看,这些文件假定它们是NAs,所以我可以直接扔掉它们,但我无法让熊猫相信这一点

    import pandas as pd
    inpatients_df = pd.read_csv("inpatient_payment_system.csv", low_memory = False)

    inpatients_df.dropna(axis = 0, how = 'any') # Remove NA values.
我已经在数据集中加载并删除了所有NAs,这并不重要


注意:此数据集中的列远远超过3列。只需要一列比其他列拥有更多的entre就可以实现这一点,而问题实际上位于csv文件的最后一行

只需将其中一列作为一个系列,然后使用它:

pd.to_numeric(df['Total Discharges'], errors='coerce').dropna() > 100).sum()

对于这种特殊情况,您应该使用
.isnumeric()
方法来获取适当的切片:

df[df['Total Discharges'].str.isnumeric()]
但要回答你的问题:很有可能,你调用空的条目可能是空字符串,所以

df[df['Total Discharges'] != '']
虽然您可能希望明确检查该单元格中的值以确保正确,但应执行此操作。

尝试以下操作:

inpatients_df.dropna(subset=['Total Discharges'], how='all', inplace = True)

每一行是否一定意味着同一位患者?例如,“32963.07、91、4763.73”行是否为一个人所有?如果不是,则不应将其存储在数据帧中。取而代之的是,每一个专栏都应该是它自己的独立系列。它是每一次临床访问。如果同一个病人再次来过,并改变了他的街道地址或保险公司,那么这将是新的一排。这其实并不重要。那么为什么在其中一列的末尾缺少值呢?这就是为什么这是一件重要的事情。其他信息没有收集。你知道我如何解决这个问题吗?@xyz123如果你只想要数值,我建议你做
df[column]=pd。要想得到数值(df[column],errors='concurve')
,然后使用dropna
to_numeric
不会将数字转换为浮点
nan
,正如OP所说,他对nans没有问题,而是空字符串。我无法让你的代码工作。当我运行它时,在'str'和'int'的实例之间不支持“TypeError:'>”。就像我说的,我让熊猫相信这是一个na。编辑以反映这一点。@Sebastian,如果您确实包含尝试您的解决方案时给出的数据输出,可能会更好。@Dark如果OP提供了数据帧或其样本,我很乐意这样做。