df = pd.DataFrame([['S1', 1, False], ['S1', 1, True],
['S2', 2, False], ['S2', 2, True], ['S2', 22, False], ['S2', 22, True],
['S3', 222, False], ['S3', 222, True]],
columns=list('ABC'))
df['D'] = np.diff(np.where(df.C, df.groupby('A')['B'].cumsum(), 0), axis=0, prepend=0)
df.D = df.groupby(df.C.eq(False).cumsum()).cumsum().D
df.D[df.D <0]=0
df
A B C D
0 S1 1 False 0
1 S1 1 True 2
2 S2 2 False 0
3 S2 2 True 2
4 S2 22 False 0
5 S2 22 True 44
6 S3 222 False 0
7 S3 222 True 396
df.D = df.groupby(df.C.eq(False).cumsum()).cumsum().D
df.D[df.D <0]=0
会不会是刷新率的问题
firefox 设置 gfx.webrender.enabled
~/.config/kwinrc 里设置一下刷新率,类似 MaxFPS 一类选项,具体查查看
有个词,我不懂具体怎么翻译,叫 social inventions,习俗一类的?
如果是 iid 似乎很简单吧,对任意分布取 n 个值(X_i),则 P(max(X_i)<=x)=P(x)^n,P 是 cdf,pdf 的话求个导 q(x)=nP(x)^{n-1}p(x), 其中 p 是 P 对应的 pdf
@
kaiki 这只是想法,不过我觉得技术也是很有意思的。就像人脸识别和反人脸识别。怎样才能做到有效的混淆~
健康的方法:坚持锻炼,规律生活,清淡饮食,最后一条最重要:买罐金施尔康,一天一粒。
不健康的方法:咖啡因,加量。
违法方法:……大麻据说好使……
@
geelaw 我觉得老哥你和平常人太较真了,一般问这种问题可能隐含的是有没有一个“能体现真正内在关系的函数关系”,像 y=x^2 这样。毕竟不管是用计数函数还是编码法都可以轻松地构造素数函数,引用一下陶哲轩大佬 07 年书里说过
For instance, we have an exact formula for the nth square number – it is n2 – but we do not have a (useful) exact formula for the nth prime number pn!
总不能把这俩方法甩陶哲轩大佬脸上吧……我感觉大多数非数学专业人问出“有没有通项”“有没有初等通项”的时候,应该指得和陶哲轩大佬说的 a (useful) exact formula 是一类概念。
当然,这个问题更取决于“有规律”的定义,我觉得最贴合的答案可能是 Pi 或者 e, 3,1,4,1,5,9,2,6,5,3...,或者 2,7,1,8,2,8,1,8... 来,删掉几个再试试。
任意有限长数列均有规律,因为拉格朗日插值。
如果你说的是简单递推规律,删掉若干数字后无规律,并且简单定义为一般人意义的简单的话建议你试试这种递推公式的数列:
a_{n+1} = x * a_n + y * a_{n-1} + z * a_{n-2}
当 x=y=1,z=0 的时候是斐波那契数列,你稍微调整一下 xyz,就能让数列删掉几个啥规律都找不见。当然,还有中更过分的,就是使用动力学体系的混沌特性,比如 a_{n+1}=4*a_n*(1-a_n),a_1=0.1,你可以试试或者对比一下 a_1=0.1 和 a_1=0.10001,生成个 200 次,跟随机数生成差不多,但规律却是确定的,必须用很完整的序列才能找到规律。
另,mathematica 有个 FindSequenceFunction, 可以快速从一列数里找一些简单规律,你可以试试。
In [23]: from mpmath import *
In [24]: mp.dps = 100; mp.pretty = True
In [25]: m
Out[25]:
[538084012500000.0 6832812857142.857421875 88573500000.0 1180980000.0 16402500.0 243000.0 4050.0 90.0]
[ 47829690000000.0 531441000000.0 5904900000.0 65610000.0 729000.0 8100.0 90.0 1.0]
[ 13348388671875.0 177978515625.0 2373046875.0 31640625.0 421875.0 5625.0 75.0 1.0]
[ 2799360000000.0 46656000000.0 777600000.0 12960000.0 216000.0 3600.0 60.0 1.0]
[ 373669453125.0 8303765625.0 184528125.0 4100625.0 91125.0 2025.0 45.0 1.0]
[ 21870000000.0 729000000.0 24300000.0 810000.0 27000.0 900.0 30.0 1.0]
[ 170859375.0 11390625.0 759375.0 50625.0 3375.0 225.0 15.0 1.0]
[ 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0]
In [26]: n = m ** -1
In [27]: nprint(n*m)
[ 1.0 2.04417e-89 2.61884e-91 3.42987e-93 4.52015e-95 6.19423e-97 9.03116e-99 1.93102e-100]
[-2.40032e-85 1.0 -3.91747e-89 -5.15496e-91 -6.69831e-93 -9.01131e-95 -1.22414e-96 -2.51457e-98]
[ 1.76004e-83 2.24203e-85 1.0 3.76075e-89 4.80636e-91 6.37293e-93 8.01006e-95 1.5947e-96]
[-6.48049e-82 -8.1386e-84 -1.01194e-85 1.0 -1.6932e-89 -2.26687e-91 -2.73878e-93 -6.08618e-95]
[ 1.11031e-80 1.39958e-82 1.72213e-84 2.41363e-86 1.0 4.24722e-90 4.96632e-92 1.30338e-93]
[ -7.611e-80 -9.60395e-82 -1.13408e-83 -1.80567e-85 -2.19884e-87 1.0 -3.55957e-91 -1.3663e-92]
[ 3.23187e-79 3.7357e-81 3.70454e-83 6.05774e-85 5.43644e-87 7.24858e-89 1.0 1.53409e-92]
[ 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0]
In [28]: