我试图弄清楚如何计算与Python Numpy函数cov的协方差.当我传递两个一维数组时,我得到了一个2x2的结果矩阵.我不知道该怎么做.我在统计数据上并不擅长,但我认为在这种情况下的协方差应该只是一个数字. 这就是我要找的.我写了自己的:
def cov(a, b):
if len(a) != len(b):
return
a_mean = np.mean(a)
b_mean = np.mean(b)
sum = 0
for i in range(0, len(a)):
sum += ((a[i] - a_mean) * (b[i] - b_mean))
return sum/(len(a)-1)
Run Code Online (Sandbox Code Playgroud)
这是有效的,但我认为Numpy版本效率更高,如果我能弄清楚如何使用它.
有谁知道如何使Numpy cov功能表现得像我写的那样?
谢谢,
戴夫
我使用Yocto为Beaglebone Black创建一个小的linux映像.我想我的大部分工作都像我想要的那样,除了我需要访问UART 2和4.当我使用标准的Debian图像时,我用设备树覆盖和capemgr做了这个.但是,我发现使用Yocto构建的内核没有capemgr.
我的选择似乎是:
选项2似乎更容易.
UART的设备树覆盖在这里和这里.我已经尝试过以某种方式包含这些内容.
这两种方法都会产生如下错误:
Error: am335x-boneblack.dts:1.1-2 syntax error
FATAL ERROR: Unable to parse input tree
Run Code Online (Sandbox Code Playgroud)
但是,我注意到在尝试编译am335x-boneblack.dts时我得到了类似的错误,即使没有修改它,所以我可能甚至没有做到这一点.(使用命令dtc -I dts -O dtb -o result.dtb am335x-boneblack.dts)
显然我不知道我在做什么.我怀疑设备树覆盖必须以某种方式进行修改,以便在我尝试使用它们的方式中使用.或者也许我没有做包含权限(只需在文件顶部添加#include).
有没有人有任何想法我可能做错了什么?我正在努力做甚么可能吗?
我正在使用python程序,作者编写了一个看起来像这样的函数
def blah():
str = "asdf asdf asdf"
doStuff(str)
Run Code Online (Sandbox Code Playgroud)
即使str是内置函数,也不应将其用作变量,这似乎可行。
这里到底发生了什么?我的猜测是str将不再可用作函数,而只能在他编写的blah()函数的范围内使用。那是对的吗?这不会在全球范围内重新定义str,对吗?
我正在尝试重写 python 类(第一次这样做),但我似乎无法重写此方法。当我运行这个时,我的recv方法不运行。它改为运行超类的方法。我在这里做错了什么?(顺便说一句,这是 python 2.7。)
import socket
class PersistentSocket(socket.socket):
def recv(self, count):
print("test")
return super(self.__class__, self).recv(count)
if __name__ == '__main__':
s = PersistentSocket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(('localhost', 2300))
print(s.recv(1)
Run Code Online (Sandbox Code Playgroud) 我已经成功构建了yocto core-image-sato并且运行良好.现在我正在尝试为构建添加一个配方.我想安装python-twisted,但我失败了.
我发现python-twisted似乎在yocto中不可用,但是在openembedded中.所以我从这里克隆了openembedded repo:
http://git.openembedded.org/meta-openembedded/
然后我将必要的目录添加到bblayers.conf中:
BBLAYERS ?= " \
/home/git/poky/meta \
/home/git/poky/meta-yocto \
/home/git/poky/meta-yocto-bsp \
/home/git/poky/meta-openembedded/meta-oe \
/home/git/poky/meta-openembedded/meta-python \
"
Run Code Online (Sandbox Code Playgroud)
当我用bitbake -p解析配方时,我收到以下错误:
Loading cache: 100% |###########################################| ETA: 00:00:00
Loaded 765 entries from dependency cache.
ERROR: ParseError at /home/git/poky/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager_1.0.10.bb:12: Could not inherit file classes/bash-completion.bbclass
Summary: There was 1 ERROR message shown, returning a non-zero exit code.
Run Code Online (Sandbox Code Playgroud)
我尝试删除有问题的文件,因为我怀疑我需要它,但这导致更糟糕的错误.
我不知道从哪里开始.我怀疑问题可能是我从openembedded获得的文件与yocto项目的文件不匹配.但我不知道该怎么做.
任何有关如何将python-twisted添加到core-image-sato的帮助将不胜感激.
python ×3
linux ×2
python-2.7 ×2
bitbake ×1
covariance ×1
device-tree ×1
embedded ×1
inheritance ×1
linux-kernel ×1
numpy ×1
openembedded ×1
twisted ×1
yocto ×1