亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在組中的每一行上隨機

在組中的每一行上隨機

DIEA 2021-09-14 21:09:45
我有一個以下數據幀:我試圖將 disbursedamount 系列中的值填充為 SanctionedAmount 的 10% 到 20% 之間的任何隨機值。這個邏輯需要應用在每組 accountid 上。Index  accountid  transdate  SanctionedAmount  balance  disbursedamount0        103602 2018-08-01              7806     6798                01        103602 2018-11-01              7806     6798                02        103606 2018-11-01              6274     7313                03        103606 2018-06-01              6274     7313                04        103606 2018-07-01              6274     7313                05        103606 2018-08-01              6274     7313                06        103609 2018-11-01              5726     8189                07        103609 2018-07-01              5726     8189                08        103609 2018-08-01              5726     8189                09        103609 2018-06-01              5726     8189                010       103617 2018-07-01              6549     7457                011       103634 2018-06-01              8835     7794                012       103637 2018-07-01              6920     6623                013       103644 2018-06-01              8481     8253                014       103645 2018-11-01              8220     9966                015       103645 2018-06-01              8220     9966                016       103645 2018-07-01              8220     9966                017       103645 2018-08-01              8220     9966                0預期輸出:Index accountid transdate  SanctionedAmount  balance disbursedamount0   103602     2018-08-01     1000            798      1001   103602     2018-11-01     1000            798      2002   103606     2018-11-01     2000            313      2003   103606     2018-06-01     2000            313      4004   103606     2018-07-01     2000            313      2005   103606     2018-08-01     2000            313      3006   103609     2018-11-01     5000            189      5007   103609     2018-07-01     5000            189      100
查看完整描述

3 回答

?
catspeake

TA貢獻1111條經驗 獲得超0個贊

你想在這里使用隨機函數是一個簡單的選擇


   from random import random

   df.disbursedamount = df.SanctionedAmount * (random()/5)


查看完整回答
反對 回復 2021-09-14
?
紅糖糍粑

TA貢獻1815條經驗 獲得超6個贊

從您的預期輸出來看,您似乎不需要“應用于每組 accountid”的邏輯,即不需要groupby. 所以每一行的解決方案是


import pandas as pd

import numpy as np


# df = the_DataFrame_you_have

df['disbursedamount'] = df['SanctionedAmount'] * np.random.uniform(0.1, 0.2)


查看完整回答
反對 回復 2021-09-14
?
翻翻過去那場雪

TA貢獻2065條經驗 獲得超14個贊

您可以簡單地乘以SanctionedAmount從 0.1 和 0.2 之間的均勻分布中隨機選擇的數字。

df['disbursedamount'] = df['SanctionedAmount'] * np.random.uniform(0.10, 0.20)


查看完整回答
反對 回復 2021-09-14
  • 3 回答
  • 0 關注
  • 234 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號