在矩阵中获得单独的列


#0 #1 #2 #3 #4 #5 #6 #7 #8 #9  #10 #11
-- -- -- -- -- -- -- -- -- --- --- ---
1  11 21 31 41 51 61 71 81 91  101 111
2  12 22 32 42 52 62 72 82 92  102 112
3  13 23 33 43 53 63 73 83 93  103 113
4  14 24 34 44 54 64 74 84 94  104 114
5  15 25 35 45 55 65 75 85 95  105 115
6  16 26 36 46 56 66 76 86 96  106 116
7  17 27 37 47 57 67 77 87 97  107 117
8  18 28 38 48 58 68 78 88 98  108 118
9  19 29 39 49 59 69 79 89 99  109 119
10 20 30 40 50 60 70 80 90 100 110 120

我可以访问连续列在位置1-4使用m[:, 1:5]在DolphinDB,但它不能工作时检索单独的列。例如,我想获得位置1、9和10的列,但是m[:,[1,9,10]]返回错误消息:

 colIndex must be a scalar value or a range

如何在DolphinDB中访问矩阵中的单独列?

您可以使用m[1,9,10]访问矩阵来检索列:

m=1..120$10:12;
index= 1 9 10
m[index]

输出
#0 #1  #2 
-- --- ---
11 91  101
12 92  102
13 93  103
14 94  104
15 95  105
16 96  106
17 97  107
18 98  108
19 99  109
20 100 110

获取单独的行(例如第1、3和5行):

m[1 3 5,0..(cols(m)-1)]

输出
#0 #1 #2 #3 #4 #5 #6 #7 #8 #9 #10 #11
-- -- -- -- -- -- -- -- -- -- --- ---
2  12 22 32 42 52 62 72 82 92 102 112
4  14 24 34 44 54 64 74 84 94 104 114
6  16 26 36 46 56 66 76 86 96 106 116

获取特定细胞:

m[1 3 5,1 9 10]

#0 #1 #2 
-- -- ---
12 92 102
14 94 104
16 96 106

DolphinDB version 2.00.8还提供了一个新的函数loc,它具有与pandas loc相同的功能。例如:

m.loc(colFilter=(1..12 in[1,9,10]), view=false)

相关内容

  • 没有找到相关文章

最新更新