编辑:重新措辞
我有一个账户列表:帐户
Account Owner Value
Acc1 Jeff 500
Acc2 Jeff 100
Acc3 Jeff 200
Acc4 Jeff 700
Acc5 Matt 400
Acc6 Matt 500
Acc7 Matt 600
Acc8 Matt 20
Acc9 Matt 80
Acc10 Matt 1400
Acc11 Cindy 50
Acc12 Cindy 50
Acc13 Cindy 150
Acc14 Cindy 600
Acc15 Cindy 600
Acc16 Cindy 1350
Acc17 Cindy 800
Acc18 Cindy 400
Acc19 Sarah 1500
Acc20 Sarah 3000
Acc21 1000
Acc22 400
Acc23 500
Acc24 800
Acc25 900
当我总结这份清单时,我得到了账户数量和账户总价值的概述
名称摘要
Name Accounts Value
Jeff 4 1500
Matt 6 3000
Cindy 8 4000
Sarah 2 3500
Mark 0 0
我添加了马克,因为他现在将是一个帐户所有者,但他目前没有任何帐户。
第一步是查看每个人应该拥有的账户的平均数。有25个账户,5个所有者,所以每个人都应该有5个账户。总价值为15600英镑,共有5名所有者,因此每个人的账户价值应该在3120英镑左右。这是一个估计值,所以我对它稍微偏离一点没意见。(在我的实际数据中,我有300个所有者和80000个账户,其中一些是所有者,另一些不是所有者)
因为每个人都应该有5个帐户,所以我们需要从拥有太多帐户和/或太多价值(超过3120个)的人那里删除帐户。马特有6个账户价值3000英镑,辛迪有8个账户价值4000英镑,莎拉有2个账户价值3500英镑。
我试图做的是一个for循环,循环遍历摘要列表中的每个名称,并查看它们是否有超过平均值的帐户或值。如果是,则在账户列表中只查找其名称中的账户,并在其自身价值的四分位范围内随机选择其中一个。这种随机选择将特别剔除大价值账户、中等价值账户或低价值账户,而不是完全随机的。我想对20%和40%之间的账户进行抽样,以保持高价值账户的完整性。每个账户的百分比范围为$$。
如果有人的账户从50美元到10000美元不等,那么个人账户价值的20%和40%将在2000美元到4000美元之间。
while循环将删除一个随机帐户,然后查看新的计数,以及此人姓名的总价值(现在将减少1个帐户,并减少2000美元)。然后再看看它是否仍高于平均水平,并不断删除帐户,直到达到阈值。它会为每个人这样做,这样它会系统地从人们的名字中删除帐户,直到他们拥有更少的帐户和很少的美元。
我已经想出的下一步是一个for循环,循环遍历没有所有者的帐户的帐户列表,并将它们分配给与其名称相关的最低值的人。
我在while循环中遇到的问题是,我想让它查看这个人是否有超过5个帐户,或者超过平均值$$s。例如,Sarah有2个帐户,但有3500个。应该从她的名单中删除一个高价值账户,这样她就有空间获得分配给她的较小账户,以填补她5个账户的配额。
for (p in 1:nrow(namesummarydf)){
nameidx <- namesummarydf$Name[p]
while (namesummarydf$count[p] > mean(namesummarydf$count) | namesummarydf$Value[p] > mean(namesummarydf$Value)){
sample(accountdf , which(accountdf$Owner == nameidx &
(accountdf$totalnewcovalue > quantile(accountdf$Value, prob = 0.15) &
accountdf$totalnewcovalue < quantile(accountdf $Value, prob = 0.45))), 1)
}
}
请尝试使用此伪代码:
df1<-data.frame(
N Q M1
Sarah 44 $110,000
Jeff 111 $541,000
Cameron 46 $201,000
Matt 0 $0
Cindy 0 $0
)
df2<-data.frame(
A N M2
Acc1 Sarah $1,200
Acc2 Sarah $900
Acc3 Jeff $700
Acc4 Cameron $880
Acc5 Jeff $4,500
)
合并(df1, df2)
它将创建一个数据。按列N
(两个数据帧中唯一的列)帧合并这两个数据帧
问题内容: 我试图通过一次添加一天来遍历while循环,但它甚至第一次都不会访问while循环。while循环中的条件正确吗?当我测试它时,它仅在一种情况下起作用,但在我添加第二种条件时停止了。 问题答案: 它应该是
问题内容: 在C语言中, 但是在Python中,似乎没有。 产生 ( 应该在上) 有解决方法吗? 问题答案: 使用中断:
Q.while循环条件是作为一个整体进行计算,还是在决定是否进入循环之前一次计算一个条件?
我正在尝试制作一个简单的程序,它使用扫描器进行输入,并有一个while循环,该循环继续输入,直到输入结束字符为止。我想让扫描器接受输入并将一个字符串添加到堆栈列表中。我试图弄清楚为什么这段代码在键入空格时不终止while循环。
在条件是promise的情况下,是否可以在循环时生成本机JavaScript
我试图询问用户他是打主场还是客场比赛,所以我想设置一个条件,如果他的输入不等于“主场”或“客场”,则打印一条相应的消息,并再次提示他输入。我选择了一个while循环和condition,我已经敲打我的头一个小时,现在试图找到问题,但似乎无法找到它。无论我输入什么,程序都打印出这里是代码: