import numpy as np
a1 = [[1,2,3,4], [4,5,6,7]] # 二维lsit列表
# 转化为一维list列表
# 首先需要将list 转化为数组, 如果需要转化数据格式,可以利用dtype
a1 = np.array(a1, dtype="float64")
# 方法1:reshape
f1 = a1.reshape(-1).tolist()
print("reshape过后源数据为:\n", a1)
# 方法2:flatten
f2 = a1.flatten().tolist()
print("flatten过后源数据为:\n", a1)
# 方法3:ravel
f3 = a1.ravel().tolist()
print("ravel过后源数据为:\n", a1)
print("变换后的数据为")
print(f1, f2, f3)
结果为:
reshape过后源数据为:
[[1. 2. 3. 4.]
[4. 5. 6. 7.]]
flatten过后源数据为:
[[1. 2. 3. 4.]
[4. 5. 6. 7.]]
ravel过后源数据为:
[[1. 2. 3. 4.]
[4. 5. 6. 7.]]
变换后的数据为
[1.0, 2.0, 3.0, 4.0, 4.0, 5.0, 6.0, 7.0] [1.0, 2.0, 3.0, 4.0, 4.0, 5.0, 6.0, 7.0] [1.0, 2.0, 3.0, 4.0, 4.0, 5.0, 6.0, 7.0]
如果使用reshape(1, -1)这个时候在转化为list时候,结果是两个,
import numpy as np
a1 = [[1,2,3,4], [4,5,6,7]] # 二维lsit列表
# 转化为一维list列表
# 首先需要将list 转化为数组, 如果需要转化数据格式,可以利用dtype
a1 = np.array(a1, dtype="float64")
# 方法1:reshape
f1 = a1.reshape(1, -1).tolist()
print("reshape过后数据为:\n", f1)
结果为
[[1.0, 2.0, 3.0, 4.0, 4.0, 5.0, 6.0, 7.0]]
如果此时需要访问一维度,则需要啊
f1 = a1.reshape(1, -1).tolist()[0]