小编use*_*521的帖子

Python:用于更改"就地"值的函数?

我想实现一个函数,允许其参数的值"就地"重新分配.

例如,一个函数将增加参数x并减少参数y.(这只是一个简单的例子 - 动机是XY实际上是大型数据帧的单个元素;它们的表达式很笨拙;而且这个操作将经历多次迭代.)

def incdec(x,y,d):
    x += d
    y -= d
Run Code Online (Sandbox Code Playgroud)

理想情况下,这将运行为:

X = 5; Y = 7; d = 2
incdec(X,Y,d)
Run Code Online (Sandbox Code Playgroud)

发现这些值现在是X = 7和Y = 5.但当然它不会那样 - 我想知道为什么?

python function

7
推荐指数
1
解决办法
6581
查看次数

Pandas:将值重新分配给数据框的"块"

可能是一个微不足道的问题,但我需要了解这里发生了什么(以及如何解决它).

假设我有一个包含列'a'和'b'的数据框,如下所示:

f = pandas.DataFrame({'a':[1,2,3,4,5], 'b':[10,20,30,40,50]})
Run Code Online (Sandbox Code Playgroud)

现在对于3个或更少的'a'的每个元素,我想将'b'的相应元素除以10.

f[f['a']<=3]['b'] = (f[f['a']<=3]['b'])/10
Run Code Online (Sandbox Code Playgroud)

因此,'b'列中的值现在应为[1,2,3,40,50].

但我发现'b'栏保持不变!是什么赋予了?

dataframe pandas

4
推荐指数
1
解决办法
3248
查看次数

标签 统计

dataframe ×1

function ×1

pandas ×1

python ×1