我试图在数据帧中找到空值。虽然我回顾了Stackoverflow的以下文章,其中描述了确定空值的过程,但我很难对我的数据集执行相同的操作。
如何计算熊猫数据帧中列中的楠值
工作代码:
import pandas as pd
a = ['america','britain','brazil','','china','jamaica'] #I deliberately introduce a NULL value
a = pd.DataFrame(a)
a.isnull()
#Output:
False
1 False
2 False
3 False
4 False
5 False
a.isnull().sum()
#Output
#0 0
#dtype: int64
我做错了什么?
其他帖子指出,'
不是空值,因此不使用isnull
方法计算。。。
…但是,'
在解释为bool
时,其计算结果确实为False
。
a.astype(bool)
0
0 True
1 True
2 True
3 False
4 True
5 True
如果您的数据框中有"
并希望以这种方式处理它,这可能会很有用。
列表中的'
不是空值,而是空字符串。要获取空值,请改用None
。pandas.isnull()
文档中描述了缺少的值是“数值数组中的NaN,[或]对象数组中的None/NaN”。
import pandas as pd
a = ['america','britain','brazil',None,'china','jamaica']
a = pd.DataFrame(a)
a.isnull()
0
0 False
1 False
2 False
3 True
4 False
5 False
您可以通过打印这两个数据帧来查看差异。在第一种情况下,数据帧如下所示:
pd.DataFrame(['america','britain','brazil',None,'china','jamaica'])
0
0 america
1 britain
2 brazil
3
4 china
5 jamaica
请注意,索引3处的值是一个空字符串。
在第二种情况下,您会得到:
pd.DataFrame(['america','britain','brazil',None,'china','jamaica'])
0
0 america
1 britain
2 brazil
3 None
4 china
5 jamaica
如果希望'
、None
和NaN
都计算为null
,可以对强制为布尔值的数据帧中的每个值使用
applymap
方法,然后使用.sum
:
import pandas as pd
import numpy as np
a = ['america','britain','brazil',None,'', np.nan, 'china','jamaica'] #I deliberately introduce a NULL value
a = pd.DataFrame(a)
a.applymap(lambda x: not x or pd.isnull(x)).sum()
# 0 3
# dtype: int64
我希望这有帮助。
问题内容: 这是我的数据框df 我正在尝试从数据帧的每一行中获取最大值,我期望这样的输出 这就是我尝试过的 我没有得到正确的输出,任何帮助将不胜感激。谢谢 问题答案: 使用有: 如果需要新列:
我正在使用: Python 3.6.8 火花2.4.4 我在spark类路径中有以下JAR: http://repo1.maven.org/maven2/com/databricks/spark-redshift_2.11/2.0.1/spark-redshift_2.11-2.0.1.jar http://repo1.maven.org/maven2/com/databricks/spark-a
我有一个熊猫数据框,格式如下: df: 现在我想将其分为两列,如下所示: 输出: 我想得到每一行的计数,如下所示。预期产出: 如何获得我的预期输出?我想找出每个“col2”值的最大计数?
我正在尝试合并两个数据帧: 第一个数据帧,,用INTEGERS/STRINGS填充 左边的数据框一起被整数/列表填充。 当我使用pandas函数时,新的数据框将用NaN填充右侧的数据框,而不是列表 我期望使用两个原始数据帧中的值创建一个新的合并数据帧。相反,在新的数据框中,“control”数据框中的所有值都是正确的,但“together”数据框中的所有列表都是正确的 以下是一些样本数据: 以下是
问题内容: 我想获取基于条件选择的数据帧行数。我尝试了以下代码。 输出: 输出显示数据帧中每一列的计数。相反,我需要获得满足以上所有条件的单一计数?这该怎么做?如果您需要有关我的数据框的更多说明,请告诉我。 问题答案: 您要的是所有条件都为真的条件,所以答案是len,除非我误解了您的要求
当我加载并运行下面的代码时,我会得到一个UnicodeDecodeError。如何解决这个问题? 我在我的文件夹中有一个CSV文件,但这种类型的错误即将出现,它不会显示输出中的头部列表。我使用Jupyter笔记本来运行代码以及编程。