请教 pandas 问题
测试数据如下:
df
name type number
0 David A 1234
1 Tom B 2233
2 Jack C 2244
3 Allen B 2355
想在 df 后面插入一列,叫 df=['is_valid']
此栏中的值主要用于判断对应行中各列数据的有效性:比如长度,是否为空值,或值是否为限定允许的值 只要有一列的判断结果为 False ,is_valid 就为 Fals
name
列值: name 值非空 , is_valid = True ;否则为 False ;type
列值: type 值在 ['A', 'B', 'C', 'D'] 中, is_valid = True ,否则为 Falsenumber
number 值长度为 4 , is_valid = True ,否则为 False想法是,一列一列地判断,根据判断结果对 is_valid 栏的值进行修订 ( True or False )
df['is_valid'] = ''
df['is_valid'] = df.name.notnull()
此时查看 df['is_valid'] 值,大致为:
df['is_valid']
0 True
1 True
2 False (name 中值为空)
3 True
1 、如何让判断第二列的时候,当判断的结果为 False 时才会更新 is_valid 的值
2 、如何判断 第二列 type 值在限定范围内,问号处怎么处理?
df['is_valid'] = df.type.?
谢谢!
1
zvDC OP 困扰半天了,向各位大侠求助,先谢谢啦。
|
2
zvDC OP 哦,测试数据中 name 列第三个值,应该为空的,不好意思。
|
3
bigtan 2017-01-13 14:03:04 +08:00
![QQ 截图 20170113140200.png]( https://ooo.0o0.ooo/2017/01/13/58786d8676c8d.png)
|
4
bigtan 2017-01-13 14:04:50 +08:00
你那个 name 的判断我没太看明白,大概是这个套路,你琢磨一下
|
5
bigtan 2017-01-13 14:05:54 +08:00
![QQ 截图 20170113140529.png]( https://ooo.0o0.ooo/2017/01/13/58786e3837401.png)
|
6
bigtan 2017-01-13 14:06:44 +08:00
看下面这个吧,大概是这么个套路,上面少些了一个判断,不明白你可以加我 qq ,我教你
|
7
ruoyu0088 2017-01-13 19:38:24 +08:00
|