遇到一个需求,现在假设有一个这样的df,c是金额,d是月份

C            Dnan      321323                          0          3132                                 0          nannan       nan

有两个规则:1.金额不能为nan     2.金额为0月份的时候如果月份也为nan那么这条记录无效

思路:判断c不能为nan,筛选 : df1['C'].notna()         然后把符合c为0 以及d为nan的那列搞死:    df2.drop(df2[(df2['C']==0) & np.isnan(df2['D'])].index)

# -*- coding: utf-8 -*
import numpy as np
import pandas as pd
from pandas import Series,DataFrame#第一个是放在df里面的随机数据,第二个是索引,也叫行,第三个叫列
df1=pd.DataFrame(
np.random.randn(4,4),
index=list('abcd'),
columns=list('ABCD')
)
print('before..............')
df1.iloc[0,2]=np.nan
df1.iloc[1,2]=0
df1.iloc[2,2]=0
df1.iloc[2,3]=np.nan
print(df1)
str1 = "A"print('after..............')#首先判断c不能为nan
df2 = df1[(df1['C'].notna())]
df2 = df2.drop(df2[(df2['C']==0) & np.isnan(df2['D'])].index)
print(df2)

转载于:https://www.cnblogs.com/daysn/p/11158084.html

pandas:dataframe删除某些不为non的行相关推荐

  1. pandas.DataFrame删除/选取含有特定数值的行或列实例

    import pandas as pd import numpy as npa=np.array([[1,2,3],[4,5,6],[7,8,9]]) df1=pd.DataFrame(a,index ...

  2. python dataframe删除指定行_pandas.DataFrame删除/选取含有特定数值的行或列

    pandas.DataFrame删除/选取含有特定数值的行或列 发布时间:2018-06-20 09:13, 浏览次数:9726 , 标签: pandas DataFrame 1.删除/选取某列含有特 ...

  3. python df删除特定行_pandas.DataFrame删除/选取含有特定数值的行或列实例

    1.删除/选取某列含有特殊数值的行 import pandas as pd import numpy as np a=np.array([[1,2,3],[4,5,6],[7,8,9]]) df1=p ...

  4. pandas dataframe 删除带空值的行 各种空值 (dropna()、isna()、isnull()、fillna())

    假设拿到一个10万行的数据后,通过isnull我们发现某列有几个空值,要把该列空值所在行删除怎么操作?用dropna()会删除所有有空值的行,请看下面实例. 区分 None,null,NULL,nan ...

  5. pandas Dataframe删除缺失值

    更多内容请参考官网的DOC:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.dropna.htm ...

  6. pandas dataframe删除空行或者空列dropna,一般删除指定行或者列drop

    dropna参见https://blog.csdn.net/roamer314/article/details/84816171 df[~(df['col'].isnull())] #删掉空行 df. ...

  7. 【pandas】删除满足条件元素所在的行

    在数据清洗时,需要按照一定条件删除某些数据样本,利用布尔表达式.索引和drop方法可以实现. 1.pandas.drop() df = df.drop(df[<some boolean cond ...

  8. [pandas] DataFrame 取指定列为某些值的行

    DataFrame 取指定列为某些值的行 sample_list=[2233,1122,1133,1223]sample_prod_df = all_prod_df[all_prod_df['prod ...

  9. [转载] Python中pandas dataframe删除一行或一列:drop函数

    参考链接: Python | Pandas 数据 DataFrame 用法:DataFrame.drop(labels=None,axis=0, index=None, columns=None, i ...

最新文章

  1. Java面试查漏补缺
  2. mysql 类型转换 cast 将 float 转换为 decimal
  3. pre_forum_thread 主题表跟pre_forum_thread内容表是用哪个字段对应起来的?
  4. Map集合HashMap TreeMap的输出方法
  5. javascript在html中的延迟与异步
  6. php怎么把数组索引,如何在php中获取数组索引号?
  7. mysql join 主表唯一_mysql left join 右表数据不唯一的情况解决方法
  8. matlab语言中的[~,b]=sort(A)用法介绍
  9. python输出完全平方数_LeetCode 279*. 完全平方数(Python)
  10. Java面试题大全带答案 40道
  11. 简明扼要聊聊 Vue3.0 的 Composition API 是啥东东!
  12. 【《Redis深度历险》读书笔记(1)】基础:万丈高楼平地起 ——Redis 5种基础数据结构
  13. EXCEL VLOOKUP用中文匹配出错
  14. Terragen 4生成环境贴图教程
  15. OJ每日一练——温度换算
  16. 1200万像素通过算法无失真扩展到1.92亿像素——加权概率模型收缩模型图像像素扩展算法
  17. 处理 Makefile: recipe for target ‘xxxxx‘ failed 错误
  18. 计算机网络专业土味情话,流行的土味情话大全:手把手教你说土味情话
  19. IDEA正则表达式高级替换
  20. 使用yolov5训练自己的模型修改的地方

热门文章

  1. 基于WinSvr2016(TP)构建的“超融合技术架构”进阶篇
  2. ansible高级用法(压测脚本)
  3. 2019年终总结--满城灯火,只若初见
  4. 遗传算法的基本概念和实现,附Java实现案例!
  5. 红黑树的理解与 Java 实现
  6. 干货 | 云计算时代携程的网络架构变迁
  7. Spring Boot是如何实现自动配置的?
  8. Java 8 中处理日期和时间示例
  9. 分布式系统与消息的投递
  10. Java集合:set的遍历方式