我想获得在 Rust 中对 a 进行排序的索引Vec
。实际上,我想argsort()
从 numpy.
例如:
let v = vec![1, 7, 4, 2];
let i = argsort(&v);
assert_eq!(i, &[0, 3, 2, 1]);
Run Code Online (Sandbox Code Playgroud) 我正在尝试安装 NumPy 但遇到问题。我使用的python版本是3.9,Windows版本是10,错误如下:
C:\>pip3 install numpy
Collecting numpy
Using cached numpy-1.19.2.zip (7.3 MB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing wheel metadata ... error
ERROR: Command errored out with exit status 1:
command: 'c:\users\arr48\appdata\local\programs\python\python39\python.exe' 'c:\users\arr48\appdata\local\programs\python\python39\lib\site-packages\pip\_vendor\pep517\_in_process.py' prepare_metadata_for_build_wheel 'C:\Users\arr48\AppData\Local\Temp\tmp0g3__7ax'
cwd: C:\Users\arr48\AppData\Local\Temp\pip-install-fincp1mj\numpy
Complete output (200 lines):
Running from numpy source directory.
setup.py:470: UserWarning: Unrecognized setuptools command, proceeding with generating Cython sources and expanding templates
run_build = parse_setuppy_commands()
Processing numpy/random\_bounded_integers.pxd.in
Processing numpy/random\bit_generator.pyx
Processing numpy/random\mtrand.pyx
Processing numpy/random\_bounded_integers.pyx.in
Processing numpy/random\_common.pyx …
Run Code Online (Sandbox Code Playgroud) 我已经搜索了一些教程等来帮助解决这个问题,但似乎找不到任何东西。
我有两个 n 维 numpy 数组列表(某些图像的 3D 数组形式),并且想要检查每个列表中的重叠图像。可以说列表 a 是训练集,列表 b 是验证集。一种解决方案是使用嵌套循环并检查每对数组是否相等,np.array(a[i], b[j])
但这很慢(每个列表中有大约 200,000 个 numpy 数组)并且坦率地说非常恶心。
我正在考虑实现此目的的一种更优雅的方法是对每个列表中的每个 numpy 数组进行哈希,然后使用这些哈希表比较每个条目。
首先,这个解决方案是否正确,其次,我将如何实现这一目标?
下面是一些数据的示例。
train_dataset[:3]
array([[[-0.5 , -0.49607843, -0.5 , ..., -0.5 ,
-0.49215686, -0.5 ],
[-0.49607843, -0.47647059, -0.5 , ..., -0.5 ,
-0.47254902, -0.49607843],
[-0.49607843, -0.49607843, -0.5 , ..., -0.5 ,
-0.49607843, -0.49607843],
...,
[-0.49607843, -0.49215686, -0.5 , ..., -0.5 ,
-0.49215686, -0.49607843],
[-0.49607843, -0.47647059, -0.5 , ..., -0.5 ,
-0.47254902, -0.49607843],
[-0.5 , -0.49607843, -0.5 , ..., -0.5 …
Run Code Online (Sandbox Code Playgroud) 我想Vec
按照 Rust 中预定义的顺序对就地进行排序(重新排序)。
例如:
let i = vec![0, 3, 2, 1];
let mut v = vec!["a", "b", "c", "d"];
v.sort_by_indices(&i);
assert_eq!(v, &["a", "d", "c", "b"]);
Run Code Online (Sandbox Code Playgroud)
我想就地执行此操作。在我的用例中,v
占用大量内存。
嘿伙计们,我对 R 还很陌生,所以如果这是一个愚蠢的问题,我深表歉意。我有一个如下所示的数据框:
Gelatin Geltrex Combo Control
1 0.761 0.732 0.557 0.723
2 0.704 0.712 0.764 0.540
3 0.580 0.435 0.351 0.537
Run Code Online (Sandbox Code Playgroud)
我想最终得到两列;一个包含行中的数字,另一列包含当前列名称作为数字的标识符?