如何在 python 数据框的单列中划分元素?

How do I divide elements in a single column of a python dataframe?

我需要 divide Pandas DataFrame 中特定列中的每个元素乘以 100。

默认情况下,Pandas divides all 元素中的 .div() 函数跨所有列,并尝试将列指定为 divide 让我只剩下那些列。

d = {
    'SYMBOL':['AAAAA','BBBBB','CCCCC'],
    'ASSETS':[5, 21, 74]}

data = pd.DataFrame(d,columns=['SYMBOL','ASSETS'])

data = data['ASSETS'].div(100)

所以,从

开始
    0     AAAAA 5
    1     BBBBB 21
    2     CCCCC 74

我最终得到

    0     0.05
    1     0.21
    2     0.74

我想要的时候

    0     AAAAA 0.05
    1     BBBBB 0.21
    2     CCCCC 0.74
data['ASSETS'] = data['ASSETS'].div(100)

您正在通过将其分配回数据来覆盖整个数据帧

您可以将符号移动到数据帧的索引中,然后 set_index,除法,最后 reset_index:

d = {
    'SYMBOL':['AAAAA','BBBBB','CCCCC'],
    'ASSETS':[5, 21, 74]}

data = pd.DataFrame(d,columns=['SYMBOL','ASSETS'])

data = data.set_index('SYMBOL')

data = data.div(100)

print(data.reset_index())

输出:

  SYMBOL  ASSETS
0  AAAAA    0.05
1  BBBBB    0.21
2  CCCCC    0.74