大熊猫中两列的类似随机变化

时间:2018-03-16 03:48:47

标签: python-3.x pandas

data = pd.DataFrame(1.0, index=[1,2,3,4,5], columns=list('ABCD') )
data[['B', 'C']] = data[['B', 'C']].apply(lambda x: x + (-1)**random.randrange(2)*1)

我想随机改变B列和C列,这样两列的变化是相同的。如果列B增加1,则列C也必须增加1。但是对于每一行,该值可以随机增加/减少。上面的代码不起作用。然后我用随机种子尝试了这个:

data['B'] = data['B'].apply(lambda x: x + (-1)**random.randrange(2)*1)
data['C'] = data['C'].apply(lambda x: x + (-1)**random.randrange(2)*1)

每行随机变化,但B列和C列的变化不一样。我该怎么做呢?

预期产出

    A   B   C   D
1   1.0 1.0 1.0 1.0
2   1.0 2.0 2.0 1.0
3   1.0 2.0 2.0 1.0
4   1.0 1.0 1.0 1.0
5   1.0 0.0 0.0 1.0

0 个答案:

没有答案