python判断一个Dataframe中的值如果全部是百分之百,则输出无空值,否则输出小于百分之百的百分数,
时间: 2024-02-18 15:59:26 浏览: 134
Python pandas.DataFrame 找出有空值的行
可以使用 pandas 库中的 DataFrame 方法来实现。
假设你的 DataFrame 叫做 df,那么你可以按照以下步骤来实现:
1. 计算每一列的空值数量,并将其存储在一个 Series 对象中。
```python
null_count = df.isnull().sum()
```
2. 计算每一列的总行数,并将其存储在一个 Series 对象中。
```python
total_count = df.shape[0]
```
3. 计算每一列的非空值数量,并将其存储在一个 Series 对象中。
```python
not_null_count = total_count - null_count
```
4. 计算每一列的百分比,并将其存储在一个 Series 对象中。
```python
percent = not_null_count / total_count
```
5. 判断每一列的百分比是否全部为 1,如果是,则输出“无空值”,否则输出小于百分之百的百分数。
```python
if (percent == 1).all():
print("无空值")
else:
percent_sorted = percent[percent < 1].sort_values()
for column, p in percent_sorted.items():
print(f"{column}: {p:.2%}")
```
注意,上面的代码中,第五步使用了 pandas 库中的条件筛选方法,只输出小于百分之百的百分数。另外,为了输出格式更加美观,使用了 f-string 和 :.2% 格式化输出百分数,保留两位小数。
阅读全文