小编Igo*_*vin的帖子

将colaboratory重置为出厂设置

我愚蠢地(?)pip安装了tensorflow-gpu,现在import tensorflow as tf失败并出现错误(找不到某些共享库)。有没有一种方法可以将环境重置为“出厂设置”?

google-colaboratory

6
推荐指数
1
解决办法
1989
查看次数

`numba` 和 `numpy.concatenate`

我正在尝试使用 来加速一些代码numba,但这很难。例如,以下函数不使用 numba-fy,

@jit(nopython=True)
def returns(Ft, x, delta):
    T = len(x)
    rets = Ft[0:T - 1] * x[1:T] - delta * np.abs(Ft[1:T] - Ft[0:T - 1])
    return np.concatenate([[0], rets])
Run Code Online (Sandbox Code Playgroud)

因为 numba 找不到 的签名np.concatenate。对此有规范的修复吗?

python numpy numba

6
推荐指数
1
解决办法
2330
查看次数

将非常大的 csv 转换为 parquet

我正在尝试将 csv 文件转换为镶木地板(我真的不在乎它是在 python 还是命令行中完成的,或者...)无论如何,这个问题解决的是,但答案似乎需要一个人来阅读首先是 csv,因为在我的例子中 csv 是 17GB,所以这实际上并不可行,所以我想要一些“离线”或流式传输方法。

python csv parquet

5
推荐指数
1
解决办法
472
查看次数

Julia 字典的关键词是好奇心

考虑以下代码:

dog = (a=5, b=6, c=7)
frog = Dict(pairs(dog))
frog.keys
Run Code Online (Sandbox Code Playgroud)

返回:

16-element Vector{Symbol}:
:a
:b
 #undef
 #undef
 #undef
 #undef
 #undef
 #undef
 #undef
 :c
 #undef
 #undef
 #undef
 #undef
 #undef
 #undef
Run Code Online (Sandbox Code Playgroud)

现在,我很清楚要获取字典的键,标准方法是keys(frog),这确实做了正确的事情,但是keys字典的属性是什么,为什么这么奇怪?

julia

5
推荐指数
1
解决办法
93
查看次数

朱莉娅备忘录

Mathematica中,如果你想要一个函数来记住它的值,那么它在语法上是相当轻松的.例如,这是标准示例 - 斐波那契:

fib[1] = 1
fib[2] = 1
fib[n_]:= fib[n] = fib[n-1] + fib[n-2]
Run Code Online (Sandbox Code Playgroud)

在朱莉娅有一些语法上令人愉快的方式吗?它使其更多涉及的部分原因是类型系统 - 这是一个单个无类型arg的实现:

function memoizeany(func)
    thedict = Dict()
    return (a)-> memoizeanyaux(a, func, thedict)
end

function memoizeanyaux(a, func, thedict)
    if haskey(thedict, a)
        return thedict[a]
    end
    res = func(a)
    thedict[a] =res
    return res
end
Run Code Online (Sandbox Code Playgroud)

为每个类型的签名执行此操作似乎有点痛苦,并且可能最多的Julia方法是使用@memoize宏,但实际上并没有回答这个问题.当然这已经出现了.

wolfram-mathematica dynamic-programming julia

4
推荐指数
1
解决办法
138
查看次数

python functools 部分混淆

考虑以下:

from functools import partial
def add(a, b, c):
   return 100 * a + 10 * b + c

add_part = partial(add, c = 2, b = 1)
add_part(3)
312
Run Code Online (Sandbox Code Playgroud)

工作正常。然而:

def foo(x, y, z):
   return x+y+z

bar = partial(foo, y=3)

bar(1, 2)
Run Code Online (Sandbox Code Playgroud)

呕吐:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: foo() got multiple values for argument 'y'
Run Code Online (Sandbox Code Playgroud)

显然我错过了一些明显的东西,但是什么呢?

python functools

4
推荐指数
1
解决办法
2027
查看次数

远程使用 pluto.jl

我最近开始使用 Pluto.jl,它非常好(而且视觉上很吸引人)。问题是:我如何设置一个“pluto 服务器”,就像jupyter. 这一定很容易,但我没有看到任何文档。

julia jupyter pluto.jl

4
推荐指数
1
解决办法
1020
查看次数

Julia 数据帧的日期时间

pandas有许多非常方便的实用程序用于操作日期时间索引。Julia 中有类似的功能吗?我还没有找到任何处理此类事情的教程,尽管它显然是可能的。

实用程序的一些示例pandas

dti = pd.to_datetime(
    ["1/1/2018", np.datetime64("2018-01-01"), 
datetime.datetime(2018, 1, 1)]
)

dti = pd.date_range("2018-01-01", periods=3, freq="H")

dti = dti.tz_localize("UTC")

dti.tz_convert("US/Pacific")

idx = pd.date_range("2018-01-01", periods=5, freq="H")
ts = pd.Series(range(len(idx)), index=idx)
ts.resample("2H").mean()
Run Code Online (Sandbox Code Playgroud)

julia dataframes.jl

4
推荐指数
1
解决办法
1566
查看次数

朱莉娅中熊猫“dropna”的类似物

我有一个 Julia 矩阵(当然,如果有帮助的话,我可以将其放入数据框),并且我想删除所有具有 NaN 值的行和列。谷歌似乎没有帮助。在 pandas 中,这是微不足道的:df.dropna().dropna(axis=1)

pandas julia

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

python中的部分累积和

假设我有一个numpy数组(或者pandas Series如果它使它更容易的话),它看起来像这样:

foo = np.array([1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0])
Run Code Online (Sandbox Code Playgroud)

我想转成数组

bar = np.array([0, 1, 2, 3, 4,0, 1, 2, 0, 1, 2, 3])
Run Code Online (Sandbox Code Playgroud)

其中条目是您需要向左走多少步才能找到1in foo

现在,显然可以编写一个循环来计算barfoo但这会非常慢。还有什么更聪明的事情可以做吗?

更新pd.Series解决方案比纯解决方案慢大约 7 倍numpy。愚蠢的循环解决方案非常慢(毫不奇怪),但是当使用 jit 编译时,numba它与解决方案一样快numpy

python numpy pandas

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

VBA 本工作簿用法

我在“thisWorkbook”中定义了一堆方法,但我无法=foo(17.0)从电子表格中访问它们。在互联网上搜索表明,对于要直接从电子表格使用的功能,您应该Module首先创建一个新的。所以,这是一个由两(三)部分组成的问题:第一个问题是:创建新模块与将内容放入本工作簿有何不同。第二个是:我应该放入什么thisWorkbook?第三个问题是:是否有任何方法可以访问thisWorkbookExcel UI 中的功能(或某些特定的工作表模块?

excel vba

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