我正在尝试使用numpys apply_along_axis和一个需要多个参数的函数.
test_array = np.arange(10)
test_array2 = np.arange(10)
def example_func(a,b):
return a+b
np.apply_along_axis(example_func, axis=0, arr=test_array, args=test_array2)
Run Code Online (Sandbox Code Playgroud)
在手册中:http://docs.scipy.org/doc/numpy/reference/generated/numpy.apply_along_axis.html有附加参数的参数args.但是如果我尝试添加该参数,python会返回错误:
*TypeError:apply_along_axis()得到一个意外的关键字参数'args'*
或者如果我不使用args,则缺少参数
*TypeError:example_func()只需2个参数(给定1个)*
这只是一个示例代码,我知道我可以用不同的方式解决这个问题,比如使用numpy.add或np.vectorize.但我的问题是,我是否可以使用numpys apply_along_axis函数和一个使用多个参数的函数.
我有一个pandas TimeSeries,它看起来像这样:
2007-02-06 15:00:00 0.780
2007-02-06 16:00:00 0.125
2007-02-06 17:00:00 0.875
2007-02-06 18:00:00 NaN
2007-02-06 19:00:00 0.565
2007-02-06 20:00:00 0.875
2007-02-06 21:00:00 0.910
2007-02-06 22:00:00 0.780
2007-02-06 23:00:00 NaN
2007-02-07 00:00:00 NaN
2007-02-07 01:00:00 0.780
2007-02-07 02:00:00 0.580
2007-02-07 03:00:00 0.880
2007-02-07 04:00:00 0.791
2007-02-07 05:00:00 NaN
Run Code Online (Sandbox Code Playgroud)
每当在一行中出现一个或多个NaN值时,我想分割大熊猫TimeSeries.我的目标是分开事件.
Event1:
2007-02-06 15:00:00 0.780
2007-02-06 16:00:00 0.125
2007-02-06 17:00:00 0.875
Event2:
2007-02-06 19:00:00 0.565
2007-02-06 20:00:00 0.875
2007-02-06 21:00:00 0.910
2007-02-06 22:00:00 0.780
Run Code Online (Sandbox Code Playgroud)
我可以遍历每一行但是还有一种聪明的方法吗?
我有两个 numpy 数组,我想绘制它们:
runoff = np.array([1,4,5,6,7,8,9])
precipitation = np.array([4,5,6,7,3,3,7])
Run Code Online (Sandbox Code Playgroud)
降水阵列应来自顶部,呈条形。径流作为图底部的线。两者的左侧和右侧都有不同的轴。很难描述这个情节,所以我只是添加了一个我用谷歌图片搜索发现的情节的链接。
我可以用 R 来做到这一点,但我想用 matplotlib 模块来学习它,现在我有点卡住了......