我有一个带有重复ID的pandas数据帧.以下是我的数据框
id nbr type count
7 21 High 4
7 21 Low 6
8 39 High 2
8 39 Low 3
9 13 High 5
9 13 Low 7
Run Code Online (Sandbox Code Playgroud)
如何仅删除具有该类型的行 Low
我下面有一个 pandas 数据框 df
df = pd.DataFrame({'id':[1,2,3],'v' : ['r','r','i'], 'w' : ['r','r','i'],'x' : ['r','i','i']})
df
id v w x
1 r r r
2 r r i
3 i i i
Run Code Online (Sandbox Code Playgroud)
列的值为r和i。我想按行计算r和 的出现次数,并i生成另外两个列标题,并将 和 i` 的计数作为每行的值,我期望的最终结果如下rir
id v w x r i
1 r r r 3 0
2 i r r 2 1
3 i i i 0 3
Run Code Online (Sandbox Code Playgroud) 我有一个pandas数据帧和一个包含特定值的列表.
我想检查列标题下的每个列值是否包含在列表中,如果找到其他
值,则要分配1.在下面的示例中,列标题v下的列值将根据列表中的值进行测试l .
l=['a','e']
df = pd.DataFrame({'id':[1,2,3,4,5],'v' : ['a','b','c','d','e']})
df
id v
1 a
2 b
3 c
4 d
5 e
Run Code Online (Sandbox Code Playgroud)
结果,我期待的是,
id v
1 1
2 0
3 0
4 0
5 1
Run Code Online (Sandbox Code Playgroud)
我试过用
df['v'] = df['v'].apply(lambda x: x.isin(l))
Run Code Online (Sandbox Code Playgroud)
但无法继续如何分配值1和0
我有两个 pandas 数据框,第一个数据框有两列,假定为键和值,第二个数据框仅包含键,我想在第二个数据框中添加一个新列,该列的值应该是匹配第一个数据帧中的键
df = pd.DataFrame({'vi' : ['a','b','c','d','e'],'s':[2,5,7,0,1]})
tf = pd.DataFrame({'vi' : ['b','d','c','a','e']})
df
vi s
a 2
b 5
c 7
d 0
e 1
tf
vi
b
d
c
a
e
result tf
vi s
b 5
d 0
c 7
a 2
e 1
Run Code Online (Sandbox Code Playgroud)