小编Cor*_*mer的帖子

逐行接受 GitHub Copilot 建议

有没有只完成第一行的快捷键?

在此输入图像描述

在这里,我只想自动完成该行line-height: 1.2;,但如果我按选项卡,它将插入整个建议的代码,包括下面的新类。

由于这种情况经常发生,有没有办法只完成第一行/逐行?

visual-studio-code vscode-keybinding github-copilot

27
推荐指数
2
解决办法
7281
查看次数

为什么 M1 Max 上的 numpy 原生速度比旧的 Intel i5 慢很多?

我刚刚买了带有 M1 Max 芯片的新 MacBook Pro,正在设置 Python。我已经尝试了几种组合设置来测试速度 - 现在我很困惑。首先把我的问题放在这里:

\n
    \n
  • 为什么在 M1 Max 上本地运行的 python 比在配备 Intel i5 的旧 MacBook Pro 2016 上慢得多(约 100%)?
  • \n
  • 在 M1 Max 上,为什么本机运行(通过 miniforge)和通过 Rosetta(通过 anaconda)运行之间没有显着的速度差异 - 后者应该慢约 20%?
  • \n
  • 在 M1 Max 和本机运行上,为什么 conda 安装的 Numpy 和 TensorFlow 安装的 Numpy 之间没有显着的速度差异 - 哪个应该更快?
  • \n
  • 在 M1 Max 上,为什么在 PyCharm IDE 中运行总是比从终端运行慢约 20%,而在我的旧 Intel Mac 上却不会发生这种情况。
  • \n
\n

支持我的问题的证据如下:

\n
\n

以下是我尝试过的设置:

\n

1.Python安装方式

\n
    \n
  • Miniforge-arm64,以便 python 在 M1 Max 芯片上原生运行。(从活动监视器检查, …

python numpy anaconda tensorflow apple-m1

18
推荐指数
3
解决办法
1万
查看次数

为什么 Julia 中的字符串创建速度这么慢?

我正在维护一个 Julia 库,其中包含一个函数,用于在长字符串中每 80 个字符后插入一个新行。

当字符串长度超过 100 万个字符时,此函数会变得非常慢(秒或更长时间)。时间似乎比线性增长更多,也许是二次增长。我不明白为什么。有人可以解释一下吗?

这是一些可重现的代码:

function chop(s; nc=80)
    nr   = ceil(Int64, length(s)/nc)
    l(i) = 1+(nc*(i-1)) 
    r(i) = min(nc*i, length(s))
    rows = [String(s[l(i):r(i)]) for i in 1:nr]
    return join(rows,'\n')
end

s = "A"^500000

chop(s)
Run Code Online (Sandbox Code Playgroud)

看来这一行是花费最多时间的地方:rows = [String(s[l(i):r(i)]) for i in 1:nr]

这是否意味着初始化一个新的需要很长时间String?这并不能真正解释超线性运行时间。

我知道构建字符串的规范快速方法是使用IOBuffer或更高级的StringBuilders包: https: //github.com/davidanthoff/StringBuilders.jl

有人可以帮助我理解为什么上面的代码仍然如此缓慢吗?

奇怪的是,下面的代码要快得多,只需添加s = collect(s)

function chop(s; nc=80)
    s = collect(s) #this line is new
    nr   = ceil(Int64, length(s)/nc)
    l(i) = 1+(nc*(i-1)) 
    r(i) = …
Run Code Online (Sandbox Code Playgroud)

string julia

16
推荐指数
4
解决办法
2382
查看次数

在树莓派 4 上安装 Rust 后无法运行货物

我尝试使用推荐的安装脚本在 Raspberrypi 4 上安装 rust:

pi@raspberrypi:/tmp $ curl https://sh.rustup.rs -sSf | sh
Run Code Online (Sandbox Code Playgroud)

但重启后,cargo找不到:

pi@raspberrypi:~ $ cargo
error: command failed: 'cargo'
error: caused by: No such file or directory (os error 2)
Run Code Online (Sandbox Code Playgroud)

这可能与安装过程中报告的情况有关(error reading rustc version)(完整的安装日志位于底部):

info: default toolchain set to 'stable-aarch64-unknown-linux-gnu'

  stable-aarch64-unknown-linux-gnu installed - (error reading rustc version)
Run Code Online (Sandbox Code Playgroud)

以下是完整的安装日志:

pi@raspberrypi:/tmp $ curl https://sh.rustup.rs -sSf | sh
info: downloading installer

Welcome to Rust!

This will download and install the official compiler for the Rust
programming language, and …
Run Code Online (Sandbox Code Playgroud)

path rust rust-cargo rustup raspberry-pi4

15
推荐指数
1
解决办法
3248
查看次数

如何避免在输入或中间输出文件更新后运行 Snakemake 规则

即使 Snakemake 构建的输出文件已经存在,Snakemake 也希望重新运行我的整个管道,因为我修改了第一个输入或中间输出文件之一。

我通过做一个 Snakemake 空运行来解决-n这个问题,它为更新的输入文件提供了以下报告:

Reason: Updated input files: input-data.csv
Run Code Online (Sandbox Code Playgroud)

以及此消息用于更新中间文件

reason: Input files updated by another job: intermediary-output.csv
Run Code Online (Sandbox Code Playgroud)

如何强制 Snakemake 忽略文件更新?

workflow caching file build snakemake

13
推荐指数
2
解决办法
1614
查看次数

迭代数据框列的条目时出错:“AttributeError:‘Series’对象没有属性‘iteritems’”

使用 pandas 版本 2,我在调用iteritems.

for event_id, region in column.iteritems():
    pass
Run Code Online (Sandbox Code Playgroud)

出现以下错误消息:

Traceback (most recent call last):
     File "/home/analyst/anaconda3/envs/outrigger_env/lib/python3.10/site- 
     packages/outrigger/io/gtf.py", line 185, in exon_bedfiles
          for event_id, region in column.iteritems())
AttributeError: 'Series' object has no attribute 'iteritems'
Run Code Online (Sandbox Code Playgroud)

python series dataframe pandas iteritems

13
推荐指数
1
解决办法
1万
查看次数

如何在ARM mac上搭建conda osx-64环境?

我有一台 M1 MacBook,使用 conda 到 miniforge3。

我想使用不是为 ARM 构建的软件包(ifcopenshell、pythonocc-core)。混合通道 (conda-forge/osx-64conda-forge/osx-arm) 通常无法可靠地工作。

如何告诉 conda/mamba 拥有仅使用 x64 的环境?我不想并行安装 osx-64 conda。

x86 conda conda-forge apple-m1 mamba

12
推荐指数
1
解决办法
8533
查看次数

如何在 python 极坐标中附加或连接两个数据帧?

我发现可以使用系列名称空间进行附加(/sf/answers/4941934161/)。我想知道是否有类似的方法来附加或连接数据帧。

pandas历史上看,这可以通过df1.append(df2). 但是,该方法已被弃用(如果尚未被弃用)pd.concat([df1, df2])

df1

A C
1 2 3

df2

A C
4 5 6

资源

A C
1 2 3
4 5 6

python concatenation append python-polars

11
推荐指数
1
解决办法
2万
查看次数

逐行接受自动补全

我在 VS-Code 环境中使用 GitHub\xe2\x80\x94Copilot。考虑到自动完成功能,我希望能够只逐行接受。

\n

例如:自动完成在 TAB 上显示五行,但我只需要前行。

\n

是否有配置文件或任何其他可能性来实现这一目标?

\n

autocomplete visual-studio-code vscode-keybinding github-copilot

8
推荐指数
1
解决办法
4342
查看次数

如何连接具有不同列的极坐标数据框

在 pandas 中,它会自动发生,只需通过调用pd.concat([df1, df2, df3]),之前没有该列的框架就会获得一个填充有NaNs 的列。

在极坐标中,我收到一条'shape error'消息,表明列不同(11 列df1vs 12 列df2)。

concatenation append python-polars

8
推荐指数
1
解决办法
4920
查看次数