我想将存储在1D中的数据更改为2D:我的意思是:
从
x|y|a
1|1|a(1,1)
2|1|a(2,1)
3|1|a(3,1)
1|2|a(1,2)
...
Run Code Online (Sandbox Code Playgroud)
成:
x\y|1 |2 |3
1 |a(1,1)|a(1,2)|a(1,3
2 |a(2,1)|a(2,2)|a(2,3)...
3 |a(3,1)|a(3,2)|a(3,3)...
...
Run Code Online (Sandbox Code Playgroud)
我通过2个循环做到了:
(rows - array of x,y,a)
for n in range(len(rows)):
for k in range(x_len):
for l in range(y_len):
if ((a[2, n] == x[0, k]) and (a[3, n] == y[0, l])):
c[k, l] = a[0, n]
Run Code Online (Sandbox Code Playgroud)
但它需要很长时间,所以我的问题是,如果在Python中有一个智能和快速的解决方案.
所以要澄清我想做的事情:
我知道return()函数,关键是它在数组a中是随机的.
所以:
Run Code Online (Sandbox Code Playgroud)a = np.empty([4, len(rows)]
我从数据库中读取数据到数组a,该数据库有4列(1,2,x,y)和'len(行)'行.
我对'1'列感兴趣 - 这个我要放到新的修改过的数组中.
Run Code Online (Sandbox Code Playgroud)x = np.zeros([1, x_len], …
我在python中有几个列表,我想只获取每个列表中的值,是否有任何函数可以直接执行?
例如我有:
{'a','b','c','d','e'},{'a','g','c','d','h','e'}, {'i','b','m','d','e','a'}
Run Code Online (Sandbox Code Playgroud)
我想制作一个包含的列表
{'a','d','e'}
Run Code Online (Sandbox Code Playgroud)
但我不知道我实际拥有多少个列表,因为它依赖于值'i'.
谢谢你的帮助!