我有以下几点:
one = [0.3, 0.3, 0.3, 0.3, 0.3, 0.17, 0.255, 0.1, 0.145, 0.275, 0.17, 0.225, 0.25, 0.25, 0.28, 0.29, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3]
two = [0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0, 5.5, 6.0, 6.5, 7.0, 7.5, 8.0, 8.5, 9.0, 9.5, 10.0, 10.5, 11.0]
data_needed = [one two] # build 22×2 Array{Float64,2}
Run Code Online (Sandbox Code Playgroud)
例如输出(截断)
22×2 Array{Float64,2}:
0.3 0.5
0.3 1.0
0.3 1.5
0.3 2.0
0.3 2.5
0.17 3.0
0.255 3.5
0.1 4.0
0.145 4.5
0.275 5.0
Run Code Online (Sandbox Code Playgroud)
所以我希望按第一列对完整的 22,2 数组进行排序:
data_needed[1:size(data_needed,1)]
Float64[22]
0.300
0.300
0.300
0.300
0.300
0.170
0.255
0.100
0.145
0.275
0.170
0.225
0.250
0.250
0.280
0.290
0.300
0.300
0.300
0.300
0.300
0.300
Run Code Online (Sandbox Code Playgroud)
按升序排序:
Float64[22]
0.100
0.145
0.170
0.170
0.225
0.250
0.250
0.255
0.275
0.280
0.290
0.300
0.300
Run Code Online (Sandbox Code Playgroud)
如果按升序按此第一列排序 - 它可能会将第二列中的相应值关联到与已排序列相同的行位置。
如果我对一个完整的数据框进行排序,例如按特定列排序,它会将同一行上的其他数据与排序顺序相关联 - 数组会发生这种情况吗?使用sort()无果。
回答:
sortslices(data_needed,dims=1)
22×2 Array{Float64,2}:
0.1 4.0
0.145 4.5
0.17 3.0
0.17 5.5
0.225 6.0
0.25 6.5
0.25 7.0
0.255 3.5
0.275 5.0
0.28 7.5
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
87 次 |
| 最近记录: |