我有一个DataFrame:
df = pd.DataFrame({'B':[2,1,2],'C':['a','b','a']})
B C
0 2 'a'
1 1 'b'
2 2 'a'
Run Code Online (Sandbox Code Playgroud)
我想在任何'b'出现之前插入一行,这是该行的副本,但是'b'更改为'c',所以我最终得到这个:
B C
0 2 'a'
1 1 'b'
1 1 'c'
2 2 'a'
Run Code Online (Sandbox Code Playgroud)
对于我的生活,我无法弄清楚如何做到这一点.
我有一组数据,和一组用于创建垃圾箱的阈值:
data = np.array([0.01, 0.02, 1, 1, 1, 2, 2, 8, 8, 4.5, 6.6])
thresholds = np.array([0,5,10])
bins = np.digitize(data, thresholds, right=True)
Run Code Online (Sandbox Code Playgroud)
对于中的每个元素bins,我想知道基本百分位数。例如,在中bins,最小容器应从第0个百分点开始。然后是下一个垃圾箱,例如20%。因此,如果in中的值data落在0到20之间data,则它属于第一个bin。
我调查了熊猫,rank(pct=True)但似乎无法正确完成。
有什么建议吗?