我刚从MATLAB转到了python,花了一天的时间,但还是不能解决这个问题。有人有什么想法吗?D1是由30个values=组成的一维数组'1','2',...' 30‘D2是由30个值组成的一维数组= '1',’1‘,...'1',以后我可能会在D2中引入不同的值,如1,1,2...3
我想将矩阵(512X512X50的Z1)中匹配的D1值替换为D2。我写了下面的函数,但它不起作用。
for i,n in enumerate(D1):
for j in range(50):
z1[:,:,j] =
我想向kdb表中添加一个新列,它应该通过填充非空值在现有列的基础上添加,如下所示 q)t:([]a:`a`b`c`d`e`f`g`h;b:1 0n 3 4 0n 6 0n 8;c:0n 2 0n 0n 5 0n 7 0n)
q)t
a b c
-----
a 1
b 2
c 3
d 4
e 5
f 6
g 7
h 8 我想添加一个列d,它将从c或d中获取非null的值,以生成如下所示的表 a b c d
-------
a 1 1
b 2 2
c 3 3
d 4 4
e 5 5
f 6 6
g 7 7
h 8 8 我试着拼接,但
我创建了一个,我必须返回类型Statistics中的每个值=0。我不知道如何返回类型统计。我只知道如何返回一个“列表”。这是类型:
type Statistics =
{ mp: Nat //--> should get 0
w: Nat //--> should get 0
d: Nat //--> should get 0
l: Nat //--> should get 0
gf: Nat //--> should get 0
ga: Nat //--> should get 0
gd: int //-->
在SQL中,当x为空或仅包含空值时,聚合函数sum(x)、avg(x)、max(x)、min(x)将返回NULL。
在KDB中,sum和avg返回零,而max和min返回(+或-)无穷大。
为了获得想要的返回null的行为,我提出了两个选项:
(A)去掉null,检查结果是否为空,然后照常聚合
nsum:{[x] x: x where not null x; $[0=count x; 0N; sum x]}
(B)创建一个新的聚合,在累计之前检查每个项目是否为空
Note that we still have to check for an empty list.
nsum:{[z] $[0
我想从向量中删除空值
a:(2013.05.20 2013.05.21 2013.05.22 0N 0N 2013.05.23)
我可以通过使用下面的命令创建一个表来实现这一点
temp:([] a);
result:exec a from temp where not null a;
但我很好奇是否有一种更快的方法,不需要创建表。
谢谢
我们有一个日期间隔数组:[[start_date, end_date], [], ...],例如:
[
[01.02.2020, 01.05.2020], # 3 months
[01.01.2020, 01.10.2020], # 9 month, but we cant count the time already in the array, so 6 month
...
]
由于算法的执行,我们应该得到期间的天数/月/年。我该怎么写这个?我会感谢你的帮助
我们希望将完整字典作为lambda函数的输入传递,但在默认情况下,kdb只传递字典的值。
如何在lambda函数中得到字典的键?
由于词法范围的限制,我们不能在lambda中使用字典名。
{0N!x}@'(`ab`cd!1 2) / Inside function we get only 1 and 2 and not `ab`cd
以下是一种解决方案,但是否有其他/更好的解决方案:
{key key @'x}(`ab`cd!1 2)
编辑-理解这个问题,这里的问题不是字典只传递值,而是“每个”函数/副词,因为每个函数只传递值给函数。
q)key each (`ab`cd!1
这个方程式接受纬度和经度,并返回y和x坐标:
y = R * cos(latitude) * sin(longitude);
x = R * cos(latitude) * cos(longitude);
示例经度和纬度:“经度”:19.0733000,“经度”:82.9479000,
Z坐标不存在为它的二维坐标。现在我显示了一些地图部分,但在大多数情况下不太正确,我从经度纬度谷歌转换,由于openStreetMap使用墨卡托投影,但使用我有一个单独的问题,那就是如何在屏幕上绘制x和y的浮点数值?
如何应用该公式?为什么使用我正在使用的方程式
我是kdb+q的新手。在我的一个练习中,我遇到了以下涉及表格的问题。
给定一个带有单个键= id的键表t,编写一个返回另一个表T的函数,使得:
a)对于测试中每一行,t中有与测试行中的非空值一样多的行。
b) t中的每一行恰好包含一个非空值,该值应与t中相应的非空值相同。
示例:
If t is
id |a b
----------
1 |1 1
2 |1 0n
then T would be
id | a b
-----------
1 |1 0n
1 |0n 1
2 |1 0n
and if t is
id | a b
我正在尝试编写一个接受今天日期的方法,如果提供的日期在2018年的DST日期之间(如果日期是03/11/18 2:00am和11/04/18 2:00am,则DST为true ),则它将返回下一次相应DST更改的日期。
实际上,我不知道如何处理这个问题,除了获取所提供的日期并围绕它编写一个case语句,以迭代所提供日期的给定年份。每一次举行不同的年份
# method to take todays date and if the date falls in between DST dates,
# then the method will return the date of the nex
编写Python程序,从用户处读取一个句子,并在进行以下更改后再次打印该句子:
将所有a和A转换为@
将s和S转换为$
将o和O转换为0
将g和G转换为8
将i和I转换为!
这是我的密码:
#user inputs a sentence
iSent=(input("Enter a sentence that you want to convert the letters of:"))
#Process of converting the letters
print(iSent.replace("s","$"))
pr
我尝试实现方法,即返回最近的一周n天的日期集合,例如星期一。
我的方法:
def date_of_next(day, weeks)
date = Date.parse(day)
if date > Date.today
delta = 0
date + delta
else
(0..weeks.to_i).each do |i|
delta = 7 * i
date + delta
end
end
end
我不知道如何妥善修理这种方法。你能帮我一下吗?提前谢谢。
我对回