我正在尝试解包元组的数据帧并在元组中执行简单的操作。
数据框看起来像
(' 10',' 20',' 50'),(' 50',' 11' ,' 23'),('无'),(' 24',' 13','')
(' 24',' 34',' 12'),(' 90',' 34' ,' 15'),(' 34',' 16',' 76'),('无')
它是一个n * m的数据框,我想要做的是在每个元组内部添加前两个值,并在实际出现数值时除以第三个值。
答案 0 :(得分:1)
如果我正确地解释了你的问题。这是你想要做的?
>>> df
0 1 2 3
0 [10, 20, 50] [50, 11, 23] None [24, 13, 43]
1 [24, 34, 12] [90, 34, 15] [34, 16, 76] None
>>> def add_divide(row):
... return [((tup[0]+tup[1])/tup[2]) if tup else None for tup in row]
...
>>> df.apply(add_divide, axis=1)
0 1 2 3
0 0.600000 2.652174 NaN 0.860465
1 4.833333 8.266667 0.657895 NaN
Here是apply
函数