根据其他列替换值

时间:2020-11-08 14:19:19

标签: python pandas numpy dataframe replace

让我写一个数据框来解释我的问题:

Loc   Length   Size
A       5       50
A       10      90
A       8       0
B       20      140
B       5       50
B       12      0

考虑一下,我有一个这样的数据框。我想做的是替换等于0的Size值。我想替换此值,例如: 如果Loc A中的大小,我要做的是(A中大小的总和)/(A中长度的总和)乘以Length,然后将此值更改为零。我想对等于0的每个Size值执行此操作,这取决于他的Location的sumSize / sumLength和他的行的Length值。 我试过了,但是什么也做不了。请帮助我,谢谢!

1 个答案:

答案 0 :(得分:2)

IIUC let group = DispatchGroup() let queue = DispatchQueue(label: "com.num.loop", attributes: .concurrent) let semaphore = DispatchSemaphore(value: 4) for i in 1...1000 { semaphore.wait() group.enter() queue.async(group: group, execute: { doWork(i) group.leave() semaphore.signal() }) } group.notify(queue: DispatchQueue.main) { // go on... } groupby上求和,然后Loc结果:

map