在 J 中创建频率矩阵(计算数组中的项目数)
Creating Frequency Matrix (counting number of items in array) in J
>text
┌───────────┬──────────┬───────────┬──────────┬──────────┬─────────┬──────────┬─────────────┬─────────────┬──────────┬───────────────┬──────────┬──────────┬────────────┬─────────────────┬──────────┬──────────┬──────────────┬─────────────┬─────────────┬────...
│speak │conceal │terribl │option │write │book │come │tuesdai │matter │act │conceal │catastroph│integr │depart │justic │put │wai │choic │realli │bad │opti...
├───────────┼──────────┼───────────┼──────────┼──────────┼─────────┼──────────┼─────────────┼─────────────┼──────────┼───────────────┼──────────┼──────────┼────────────┼─────────────────┼──────────┼──────────┼──────────────┼─────────────┼─────────────┼────...
│trump │logu │talk │entir │time │talk │entir │time │discov │someth │frequent │doe │logu │thi │direct │logu │direct │logu │differ │direct │cons...
├───────────┼──────────┼───────────┼──────────┼──────────┼─────────┼──────────┼─────────────┼─────────────┼──────────┼───────────────┼──────────┼──────────┼────────────┼─────────────────┼──────────┼──────────┼──────────────┼─────────────┼─────────────┼────...
│cohen │lawyer │object │taint │team │anoth │unusu │move │lawyer │trump │file │emerg │motion │court │sundai │night │sai │presid │object │extraordinari│meas...
├───────────┼──────────┼───────────┼──────────┼──────────┼─────────┼──────────┼─────────────┼─────────────┼──────────┼───────────────┼──────────┼──────────┼────────────┼─────────────────┼──────────┼──────────┼──────────────┼─────────────┼─────────────┼────...
│photo │presid │trump │fire │jame │comei │director │mai │did │mean │end │comei │time │public │memoir │higher │loyalti │releas │comei │featur │wide...
├───────────┼──────────┼───────────┼──────────┼──────────┼─────────┼──────────┼─────────────┼─────────────┼──────────┼───────────────┼──────────┼──────────┼────────────┼─────────────────┼──────────┼──────────┼──────────────┼─────────────┼─────────────┼────...
│british │deleg │organ │wrote │twitter │russia │syria │allow │access │douma │unfett │access │essenti │russia │syria │cooper │western │diplomat │confirm │syria │russ...
├───────────┼──────────┼───────────┼──────────┼──────────┼─────────┼
cleaned_text
┌─────┬───────┬───────┬──────┬─────┬────┬────┬───────┬──────┬───┬───────┬──────────┬──────┬──────┬──────┬───┬───┬─────┬──────┬───┬──────┬──────────┬──────┬────┬────┬────┬────────┬─────┬─────┬───────┬───────┬───────┬───────┬───┬─────┬───────┬────┬───────┬──...
│speak│conceal│terribl│option│write│book│come│tuesdai│matter│act│conceal│catastroph│integr│depart│justic│put│wai│choic│realli│bad│option│catastroph│option│hard│call│tell│congress│thing│chang│clinton│fervent│support│disagre│sai│least│philipp│rein│longtim│tr...
└─────┴───────┴───────┴──────┴─────┴────┴────┴───────┴──────┴───┴───────┴──────────┴──────┴──────┴──────┴───┴───┴─────┴──────┴───┴──────┴──────────┴──────┴────┴────┴────┴────────┴─────┴─────┴───────┴───────┴───────┴───────┴───┴─────┴───────┴────┴───────┴──...
"text" 的每一行都是一篇新闻文章,我试图从每篇文章中的 cleaned_text 中找出每个词汇的数量,以便我可以创建这样的频率矩阵:
art1 art2 art3 ...
mai 4 5 4
sai 1 0 0
...
我在找e。和 E. verbs 来计算每篇文章中每个词汇的数量,但在这种情况下我很难使用它们。
谁能帮我解决这个问题???谢谢!
我会使用稍微不同的方法。为了简单起见,我将使用 p
的示例
p
┌─────┬─────┬─────┬─────┬─────┐
│pants│shirt│shirt│hat │pants│
├─────┼─────┼─────┼─────┼─────┤
│shoes│shoes│socks│pants│shirt│
├─────┼─────┼─────┼─────┼─────┤
│shirt│hat │pants│shoes│shoes│
├─────┼─────┼─────┼─────┼─────┤
│socks│pants│shirt│shirt│hat │
├─────┼─────┼─────┼─────┼─────┤
│pants│shoes│shoes│socks│pants│
├─────┼─────┼─────┼─────┼─────┤
│shirt│shirt│hat │pants│shoes│
└─────┴─────┴─────┴─────┴─────┘
要计算每件衣服的数量,我需要将每一行与整个词汇表进行比较。我通过 ravelling (,
) p 和 nub (~.
) 获得了整个词汇表,这确保了 p 中的每个可能的词都被考虑在内。
~.@:,p
┌─────┬─────┬───┬─────┬─────┐
│pants│shirt│hat│shoes│socks│
└─────┴─────┴───┴─────┴─────┘
现在我将转置 (|:
) p,这样我就可以使用 =/
将每一行与 nub 进行比较,最后计算每一项的总和。 +/@:
+/@:(|: =/ ~.@,)p
2 2 1 0 0
1 1 0 2 1
1 1 1 2 0
1 2 1 0 1
2 0 0 2 1
1 2 1 1 0
根据小块读取这些数字,我看到第一行有 2 条裤子 2 件衬衫 1 顶帽子 0 只鞋和 0 只袜子,经检查这是正确的。第二行有1-pant 1-shirt 0-hats 2-shoes and 1-sock等等...
希望对您有所帮助。
>text
┌───────────┬──────────┬───────────┬──────────┬──────────┬─────────┬──────────┬─────────────┬─────────────┬──────────┬───────────────┬──────────┬──────────┬────────────┬─────────────────┬──────────┬──────────┬──────────────┬─────────────┬─────────────┬────...
│speak │conceal │terribl │option │write │book │come │tuesdai │matter │act │conceal │catastroph│integr │depart │justic │put │wai │choic │realli │bad │opti...
├───────────┼──────────┼───────────┼──────────┼──────────┼─────────┼──────────┼─────────────┼─────────────┼──────────┼───────────────┼──────────┼──────────┼────────────┼─────────────────┼──────────┼──────────┼──────────────┼─────────────┼─────────────┼────...
│trump │logu │talk │entir │time │talk │entir │time │discov │someth │frequent │doe │logu │thi │direct │logu │direct │logu │differ │direct │cons...
├───────────┼──────────┼───────────┼──────────┼──────────┼─────────┼──────────┼─────────────┼─────────────┼──────────┼───────────────┼──────────┼──────────┼────────────┼─────────────────┼──────────┼──────────┼──────────────┼─────────────┼─────────────┼────...
│cohen │lawyer │object │taint │team │anoth │unusu │move │lawyer │trump │file │emerg │motion │court │sundai │night │sai │presid │object │extraordinari│meas...
├───────────┼──────────┼───────────┼──────────┼──────────┼─────────┼──────────┼─────────────┼─────────────┼──────────┼───────────────┼──────────┼──────────┼────────────┼─────────────────┼──────────┼──────────┼──────────────┼─────────────┼─────────────┼────...
│photo │presid │trump │fire │jame │comei │director │mai │did │mean │end │comei │time │public │memoir │higher │loyalti │releas │comei │featur │wide...
├───────────┼──────────┼───────────┼──────────┼──────────┼─────────┼──────────┼─────────────┼─────────────┼──────────┼───────────────┼──────────┼──────────┼────────────┼─────────────────┼──────────┼──────────┼──────────────┼─────────────┼─────────────┼────...
│british │deleg │organ │wrote │twitter │russia │syria │allow │access │douma │unfett │access │essenti │russia │syria │cooper │western │diplomat │confirm │syria │russ...
├───────────┼──────────┼───────────┼──────────┼──────────┼─────────┼
cleaned_text
┌─────┬───────┬───────┬──────┬─────┬────┬────┬───────┬──────┬───┬───────┬──────────┬──────┬──────┬──────┬───┬───┬─────┬──────┬───┬──────┬──────────┬──────┬────┬────┬────┬────────┬─────┬─────┬───────┬───────┬───────┬───────┬───┬─────┬───────┬────┬───────┬──...
│speak│conceal│terribl│option│write│book│come│tuesdai│matter│act│conceal│catastroph│integr│depart│justic│put│wai│choic│realli│bad│option│catastroph│option│hard│call│tell│congress│thing│chang│clinton│fervent│support│disagre│sai│least│philipp│rein│longtim│tr...
└─────┴───────┴───────┴──────┴─────┴────┴────┴───────┴──────┴───┴───────┴──────────┴──────┴──────┴──────┴───┴───┴─────┴──────┴───┴──────┴──────────┴──────┴────┴────┴────┴────────┴─────┴─────┴───────┴───────┴───────┴───────┴───┴─────┴───────┴────┴───────┴──...
"text" 的每一行都是一篇新闻文章,我试图从每篇文章中的 cleaned_text 中找出每个词汇的数量,以便我可以创建这样的频率矩阵:
art1 art2 art3 ...
mai 4 5 4
sai 1 0 0
...
我在找e。和 E. verbs 来计算每篇文章中每个词汇的数量,但在这种情况下我很难使用它们。
谁能帮我解决这个问题???谢谢!
我会使用稍微不同的方法。为了简单起见,我将使用 p
p
┌─────┬─────┬─────┬─────┬─────┐
│pants│shirt│shirt│hat │pants│
├─────┼─────┼─────┼─────┼─────┤
│shoes│shoes│socks│pants│shirt│
├─────┼─────┼─────┼─────┼─────┤
│shirt│hat │pants│shoes│shoes│
├─────┼─────┼─────┼─────┼─────┤
│socks│pants│shirt│shirt│hat │
├─────┼─────┼─────┼─────┼─────┤
│pants│shoes│shoes│socks│pants│
├─────┼─────┼─────┼─────┼─────┤
│shirt│shirt│hat │pants│shoes│
└─────┴─────┴─────┴─────┴─────┘
要计算每件衣服的数量,我需要将每一行与整个词汇表进行比较。我通过 ravelling (,
) p 和 nub (~.
) 获得了整个词汇表,这确保了 p 中的每个可能的词都被考虑在内。
~.@:,p
┌─────┬─────┬───┬─────┬─────┐
│pants│shirt│hat│shoes│socks│
└─────┴─────┴───┴─────┴─────┘
现在我将转置 (|:
) p,这样我就可以使用 =/
将每一行与 nub 进行比较,最后计算每一项的总和。 +/@:
+/@:(|: =/ ~.@,)p
2 2 1 0 0
1 1 0 2 1
1 1 1 2 0
1 2 1 0 1
2 0 0 2 1
1 2 1 1 0
根据小块读取这些数字,我看到第一行有 2 条裤子 2 件衬衫 1 顶帽子 0 只鞋和 0 只袜子,经检查这是正确的。第二行有1-pant 1-shirt 0-hats 2-shoes and 1-sock等等...
希望对您有所帮助。