如何解决我如何从J的下表中操作/提取信息
]data=:_3 ]\ 'Jack';23;178;'Rick';27;181;'Alice';41;178;'Mitch';31;184;'Paul';32;179
┌─────┬──┬───┐
│Jack │23│178│
├─────┼──┼───┤
│Rick │27│181│
├─────┼──┼───┤
│Alice│41│178│
├─────┼──┼───┤
│Mitch│31│184│
├─────┼──┼───┤
│Paul │32│179│
└─────┴──┴───┘
第一个字段是名称,第二个字段是年龄,第三个字段是以厘米为单位的高度。
解决方法
如果您搜索[j] table,您会发现this question可能是您的Inverted Tables的重复,但是很容易想到它的答案似乎并不适用于您的数据,所以我修改了以下答案:
NB. Select names
0 {"1 data
+----+----+-----+-----+----+
|Jack|Rick|Alice|Mitch|Paul|
+----+----+-----+-----+----+
NB. test if name contains a 'k'
+/"1 'k' e.~ 0 {::"1 data
1 1 0 0 0
NB. select rows where the name contains a 'k'
(+/"1 'k' e.~ 0 {::"1 data) # data
+----+--+---+
|Jack|23|178|
+----+--+---+
|Rick|27|181|
+----+--+---+
(#~ [: +/"1 'k' e.~ 0&{::"1) data
+----+--+---+
|Jack|23|178|
+----+--+---+
|Rick|27|181|
+----+--+---+
NB. select names where height > 180
> 0{"1 (#~ 180 < 2&{::"1) data
Rick
Mitch
NB. get average age and height
(+/%#) 1 2 pick"1 data
30.8 180
NB. add a row
is =: 4 : 'data =: data,(<x),y'
years =: 1 : '<u'
cm =: 1 : '<u'
'Rebecca' is 24 years,176 cm
... omitted ...
'Gregory' is 37 years,182 cm
... omitted ...
load 'inverted',.&.> ifa data
+-------+--+---+
|Jack |23|178|
|Rick |27|181|
|Alice |41|178|
|Mitch |31|184|
|Paul |32|179|
|Rebecca|24|176|
|Gregory|37|182|
+-------+--+---+
最后一位来自explodeOnClick,它具有一些优点,可能最不重要的一点是它们回声少。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。