V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  necomancer  ›  全部回复第 7 页 / 共 32 页
回复总数  626
1 ... 3  4  5  6  7  8  9  10  11  12 ... 32  
2021-04-21 00:07:49 +08:00
回复了 sunhk25 创建的主题 Python Python numpy 如何优雅的进行矩阵的并行计算
我测试了一下,有个简单一点的方法,但是会慢一些:
arr = np.arange(3)
def how(x, y):
....if x < y:
........return x + y
....return x * y
np.frompyfunc(how, 2, 1)(arr[:,None], arr)

frompyfunc 会返回一个 ufunc,从而让 numpy 可以 broadcast 自定义的函数。但是效率似乎没有 numba 的 vectorize/guvectorize 高,尤其是 numba 可以 target='gpu'或者'parallel'
2021-04-20 23:47:29 +08:00
回复了 sunhk25 创建的主题 Python Python numpy 如何优雅的进行矩阵的并行计算
另,guvectorize 可以 target='cpu', 'gpu', 'parallel'
2021-04-20 23:43:18 +08:00
回复了 sunhk25 创建的主题 Python Python numpy 如何优雅的进行矩阵的并行计算
这狗 shit 的排版……
2021-04-20 23:42:20 +08:00
回复了 sunhk25 创建的主题 Python Python numpy 如何优雅的进行矩阵的并行计算
想要速度一定要用 nopython=True,但是代码得注意一定不能有 object
2021-04-20 23:41:49 +08:00
回复了 sunhk25 创建的主题 Python Python numpy 如何优雅的进行矩阵的并行计算
In [4]: from numba import guvectorize, float64, jit
In [5]: @jit(nopython=True)
...: def how(x, y):
...: return x + y
In [6]: @guvectorize([(float64[:], float64[:,:])], '(n)->(n, n)', nopython=True)
...: def f(arr, ret):
...: for i in range(arr.shape[0]):
...: for j in range(arr.shape[0]):
...: if j >= i:
...: tmp = how(arr[i], arr[j])
...: ret[i, j] = tmp
...: ret[j, i] = tmp
In [11]: arr = [np.arange(3), np.arange(10, 13)]

In [12]: f(arr)
Out[12]:
array([[[ 0., 1., 2.],
[ 1., 2., 3.],
[ 2., 3., 4.]],

[[20., 21., 22.],
[21., 22., 23.],
[22., 23., 24.]]])
In [13]: arr = np.arange(3)

In [14]: f(arr)
Out[14]:
array([[0., 1., 2.],
[1., 2., 3.],
[2., 3., 4.]])
2021-04-09 10:20:45 +08:00
回复了 d0m2o08 创建的主题 Linux Linux 下一些配置文件以数字开头,这些数字有什么特殊含义么?
调执行顺序的吧,不一般对应的.conf 里都是 for file in xxx.d/*.conf 这样,用数字控制执行顺序,而不是文件名字母排序。
2021-03-14 20:40:58 +08:00
回复了 sdushn 创建的主题 Python 是否有合适的 Python 库实现一组采样数据的尖峰检测呢
https://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.find_peaks.html

一般这些算法都是基于小波变换,看看原理很简单的。
2021-03-14 20:35:35 +08:00
回复了 yaleyu 创建的主题 Python 开新帖求教 pandas 大拿,关于 groupby 和 cumsum 和 rolling
@yaleyu 这速度测试……是数据集太小了吧……
2021-03-12 10:52:48 +08:00
回复了 yaleyu 创建的主题 Python 开新帖求教 pandas 大拿,关于 groupby 和 cumsum 和 rolling
df['D'] = np.where(df.C, df.groupby(pd.Series(np.diff(df.C, prepend=0)).eq(-1).cumsum()).B.cumsum(),0)

df

A B C D
0 S1 10 False 0
1 S1 10 True 20
2 S2 20 False 0
3 S2 10 False 0
4 S2 10 True 40
5 S3 200 False 0
6 S3 100 False 0
7 S3 100 True 400
2021-03-12 10:39:24 +08:00
回复了 yaleyu 创建的主题 Python 开新帖求教 pandas 大拿,关于 groupby 和 cumsum 和 rolling
你上个帖子里说
如下一个表,想每当 C 列为 False 时候,D 列为 0,为 True 时候,D 列为 B 列的上一次 C 列为 False 到当前列的加总

这次就变成
求助问题:对每个 A 列里面的值,当 C 列为 False 时候,D 列为 0,当 C 列为 True 时候,D 列为上一个 True 之后的第一个 False 到当前行的 B 列总和。

大屁眼子!
2021-03-11 17:09:53 +08:00
回复了 yaleyu 创建的主题 Python 又来求教 pandas 大拿了
……我是智障

df['D'] = np.where(df.C, df.groupby(df.C.eq(False).cumsum()).B.cumsum(), 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 4
4 S2 22 False 0
5 S2 22 True 44
6 S3 222 False 0
7 S3 222 True 444
2021-03-11 17:03:40 +08:00
回复了 yaleyu 创建的主题 Python 又来求教 pandas 大拿了
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
2021-03-11 16:58:23 +08:00
回复了 yaleyu 创建的主题 Python 又来求教 pandas 大拿了
df.D = df.groupby(df.C.eq(False).cumsum()).cumsum().D
df.D[df.D <0]=0
2021-02-12 16:04:19 +08:00
回复了 getadoggie 创建的主题 Linux Linux 下 Firefox 滚动网页会抖动,求教
会不会是刷新率的问题
firefox 设置 gfx.webrender.enabled
~/.config/kwinrc 里设置一下刷新率,类似 MaxFPS 一类选项,具体查查看
2021-02-12 13:00:20 +08:00
回复了 supermao 创建的主题 生活 群发的依然不想回
@Issacx 对,我脑残了
2021-02-12 02:40:30 +08:00
回复了 supermao 创建的主题 生活 群发的依然不想回
有个词,我不懂具体怎么翻译,叫 social inventions,习俗一类的?
2021-02-10 02:12:31 +08:00
回复了 mutelog 创建的主题 程序员 正态分布样本最大值服从什么分布
如果是 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
1 ... 3  4  5  6  7  8  9  10  11  12 ... 32  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2550 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 21ms · UTC 10:43 · PVG 18:43 · LAX 02:43 · JFK 05:43
Developed with CodeLauncher
♥ Do have faith in what you're doing.