有没有一种方法可以在python中获得给定均值和样本数据点的协方差矩阵
例:
mean = [3 3.6]
data = [[1 2]
[2 3]
[3 3]
[4 5]
[5 5]]
Run Code Online (Sandbox Code Playgroud)
我知道如何通过在公式中替换这些值来计算相同的值.但是在python中是否有一个内置函数可以为我做这个.我知道Matlab中有一个,但我不确定python.
所以我有一个Python代码,它返回一个像这样的JSON字符串:
'{"X": "value1", "Y": "value2", "Z": [{"A": "value3", "B": "value4"}]}'
Run Code Online (Sandbox Code Playgroud)
我想要做的是打印和/或返回(在Python中)"value 3"以便使用它.同时将其分配给变量,以便稍后我可以使用它.
我怎样才能做到这一点?
我正在尝试创建一个计算器,但我在编写一个将从列表中减去数字的函数时遇到问题.
例如:
class Calculator(object):
def __init__(self, args):
self.args = args
def subtract_numbers(self, *args):
return ***here is where I need the subtraction function to be****
Run Code Online (Sandbox Code Playgroud)
另外,我可以简单地使用return sum(args)来计算总数,但我不确定我能为减法做些什么.
我有一个列表,我保存由特定类创建的对象.
我想知道,因为我无法解决这个问题,如何从列表中删除该类的实例?
这应该基于知道对象的一个属性而发生.
我想我错过了关于doctest的sphinx扩展的一些内容.
文档中的典型示例是:
.. doctest::
>>> print 1
1
Run Code Online (Sandbox Code Playgroud)
有没有办法让sphinx 1自动生成输出(这里:) ?
据我所知,可以运行:
$ make doctest
Run Code Online (Sandbox Code Playgroud)
它具有测试代码片段的效果,并将实际输出与预期输出进行比较.例如,如果你有
.. doctest::
>>> print 1
3
Run Code Online (Sandbox Code Playgroud)
doctest会警告你1它正在期待它3.
相反,我希望sphinx在我的docstring或我的.rst文件中单独插入实际输出.例如,如果我们有类似的东西:
.. doctest::
>>> print 1
>>> print [2*x for x in range(3)]
Run Code Online (Sandbox Code Playgroud)
我希望当我们运行make doctest一个选项时,它会将docstring更改为:
.. doctest::
>>> print 1
1
>>> print [2*x for x in range(3)]
[0,2,4]
Run Code Online (Sandbox Code Playgroud)
我确信这是可能的,而且非常方便!
可以说我有两个清单.它们是从-5到5的书籍评级列表.
我想知道list1的元素是什么时候>= 1和list2的元素== 0,例如.
list1 = [3, 3, 1, 0, 3, 0, 3, 0, 0, -3, 0, 5, 3, 0, 1, 0, 0, 5, 3, 0, 0, 0, 0, 1, 0, 3, 0, 1, 0, 0, 3, 5, 3, 3, 0, 0, 0, 5, 0, 5, 0, 3, 3, 0, -3, 0, 0, 5, 1, 5, 3, 0, 3, 0, 0]
list2 = [5, 0, 0, 0, 0, 0, 5, 0, 0, 1, 0, 5, 3, …Run Code Online (Sandbox Code Playgroud) 我正在尝试从文件名中提取电影元数据(标题和年份)。
名称模式不是标准的,但也不是随机的,所以我试图涵盖尽可能多的情况。
为了给您一个想法,这是文件名的示例:
samples = ['The Movie Title.avi',
'The Movie Title DVDRIP. Useless.info.avi',
'The Movie Title [2005].avi',
'The Movie Title (2005) [Useless.info].avi',
'The Movie Title 2005 H264 DVDRip Useless-Info.avi',
'The Movie Title 2005 XviD Useless info.avi',
'The Movie Title {2005} DVDRIP. UselessInfo.avi',
'The.Movie.Title.2005.Useless.info.avi',
'[Useless.info]_The.Movie.Title.2005.Useless.avi']
Run Code Online (Sandbox Code Playgroud)
任何地方都有UselessInfo它是因为写的东西可能有任何东西并且不能用于获取信息(从文件到文件的更改)。另请注意,这'The Movie Title'可能是带有数字或非字母字符的内容,例如:The Movie Title 2 - The Return'例如。
预期的输出应该是一个字典,如:
metadata = {'title': 'The Movie Title', 'year': '2005'}
Run Code Online (Sandbox Code Playgroud)
现在我正在使用一串 regexp,但我不知道有更好的方法来做到这一点。
我对Python很陌生,并且对于你能做什么和不能用列表做些什么感到困惑.我有两个要比较的列表,并以二进制格式返回匹配和非匹配元素.List1长度恒定,而长度List2不同(但总是短于List1).
例如:
List1 = ['dog', 'cat', 'pig', 'donkey']
List2 = ['dog', 'cat', 'donkey']
Run Code Online (Sandbox Code Playgroud)
需要输出:
List3 = [1, 1, 0, 1]
Run Code Online (Sandbox Code Playgroud)
我到目前为止的代码是:
def match_nonmatch(List1, List2):
List3 = []
for i in range(len(List1)):
for j in range(len(List2)):
if List1[i] == List2[j]:
List3.append(1)
else:
List3.append(0)
return List3
Run Code Online (Sandbox Code Playgroud)
我可以在比较列表时返回匹配项,但是当我包含上面显示的else语句以返回不匹配时,我最终会得到一个比它应该更长的列表.例如,当我使用比较60个项目的列表时,我得到一个包含3600个项目而不是60个项目的列表.
我很感激,如果有人可以向我解释我的代码目前的问题,并建议我如何修改代码,以便它做我想要的.
如果这样的列表不为空,我正在寻找一种更好的方法来为列表的内容分配一个集合,否则应该使用另一个列表.
如果有可能我想要一个更好的方式来写这个(或者为什么这是最好的方式的论据):
if args.onlyTheseServers:
only = set(args.onlyTheseServers)
else:
only = set(availableServers)
Run Code Online (Sandbox Code Playgroud)