多个新列依赖于其他列值

时间:2016-07-27 09:58:09

标签: python pandas

我有一个如下所示的数据框:

Node Node1 Length Spaces Dist T 1 2 600 30 300 100 1 3 400 20 200 100 2 1 600 30 300 100 2 6 500 25 250 400 3 1 400 20 200 100 3 4 400 20 200 200 3 12 400 20 200 200 4 3 400 20 200 200 4 5 200 10 100 500 4 11 600 30 300 1400 5 4 200 10 100 500 5 6 400 20 200 200 5 9 500 25 250 800 6 2 500 25 250 400 6 5 400 20 200 200 6 8 200 10 100 800

这告诉我们,例如在第一行中,节点1和2之间有30个空格。我怎么能创建30个值为1的新列来单独表示每个空格。然后为每一行做同样的事情。

1 个答案:

答案 0 :(得分:0)

以下代码应该有效(col' A'是你的NoSpaces'):

import numpy as np
import pandas as pd    
df = pd.DataFrame(np.random.randint(0,10,size=(100, 4)), columns=list('ABCD'))
max_val = df['A'].max()
for itr in range(max_val):
    colname = 'A%d' % itr
    df[colname] = (df['A'] >=itr).astype('int')