python - 如何很好地处理 [ :-0] slicing?

标签 python numpy slice

在实现自相关函数时,我有一个类似的术语

for k in range(start,N):
    c[k] = np.sum(f[:-k] * f[k:])/(N-k)

现在,如果 start = 1 一切正常,但我想很好地处理从 0 开始的情况,而无需条件。

显然它不能正常工作,因为 f[:-0] == f[:0] 并返回一个空数组,而在那种情况下我想要完整的数组.

最佳答案

在这种情况下不要使用负索引

f[:len(f)-k]

对于 k == 0,它返回整个数组。对于任何其他正 k 它等同于 f[:-k]

关于python - 如何很好地处理 [ :-0] slicing?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35264670/

相关文章:

python - 如何使用 python 和 Google Docs API 获取创建的文件的 ID?

python - 确保 numpy 数组中至少有一定的维度

python - 使用 einsum 的矩阵乘法

go - 根据 Go 中的条件从 slice 中选取值的最惯用方法是什么?

python - SQL 查询从桥接表返回数据返回错误(可能是由于我的查询语法!)

python - 如何在 python 中制作帕累托图?

Python pandas 没有属性 ols - 错误(滚动 OLS)

python - 更新 numpy 数组中的值时修复代码重复

arrays - 获取 Golang 标志作为字节数组

python - 有条件的 Pandas 行向变换