mathematica--关联

mathematica--关联
今天想讲一下关联,
Association
即上面这个函数的使用。

首先让我们构造两张表
data1 = Table[{k, RandomChoice[{"每天洗澡", "两天洗澡"}]}, {k, 9}]
data2 = Table[{Mod[7 k, 9] + 1,RandomChoice[{"一日三餐", "一日两餐", "一日四餐"}]}, {k, 7}]
接着我们来构造关联
ass = Association[#[[1]] -> #[[2]] & /@ data2]
这样你通过前面的数字就可以找到每日的就餐情况了
例如



下面我们想要把两张表格合起来
TableForm[
 Flatten[{#, Association[#[[1]] -> #[[2]] & /@ data2][#[[1]]]}] /. 
    Missing[__] -> "--" & /@ data1]
达到了上图的效果

接下来,我们想要看一下每天洗澡的人的吃饭情况,使用函数Select
(*先生成一个表格*)
table = Flatten[{#, ass[#[[1]]]}] /. Missing[__] -> "--" & /@ data1
(*对表格的每一行的第二个元素进行判断,找到 "每日洗澡"的*)
Select[table, #[[2]] == "每天洗澡" &] // TableForm
这样就可以看到每天洗澡的人的就餐情况了。

以上,所有。
2016/12/9



posted on 2016-12-09 17:21  WMN7Q  阅读(328)  评论(0编辑  收藏  举报

导航