我的adist函数有问题。基本上,我使用的是RDocumentation的示例。
attr(adist(c("kitten", "sitting"), counts = TRUE), "trafos") here
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试运行时,又增加了一个字
attr(adist(c("kitten", "sitting", "hi"), counts = TRUE), "trafos")
Run Code Online (Sandbox Code Playgroud)
我正在取得这些结果:
[,1] [,2] [,3]
[1,] "MMMMMM" "SMMMSMI" "SMDDDDI"
[2,] "SMMMSMD" "MMMMMMM" "SDDDMDD"
[3,] "SMIIIID" "SIIIMII" "MMI"
Run Code Online (Sandbox Code Playgroud)
在第三列的第三行中,我正在使用MMI,但我无法理解为什么是同一单词“ hi”。因此必须是MM。(匹配,匹配且无插入)
参考:https : //www.rdocumentation.org/packages/utils/versions/3.6.0/topics/adist
我正在使用另一个示例:
test <- c('x','hi', 'y','x')
attr(adist(test, y=NULL , counts = TRUE), "trafos")
Run Code Online (Sandbox Code Playgroud)
我正在取得这些结果。但是至少对角线需要为M,因为同一个单词。
[,1] [,2] [,3] [,4]
[1,] "M" "SI" "SI" "MI"
[2,] "SD" "MM" "SD" "SD"
[3,] "SD" "SI" "MI" "SI"
[4,] "MI" "SI" "SI" "MI"
Run Code Online (Sandbox Code Playgroud)
我不明白这是怎么回事。
我有 wkt 数据,我正在尝试在 PostgreSQL 中创建一个 JSON 输出。
我知道有一个函数 ST_AsGeoJSON ( https://postgis.net/docs/ST_AsGeoJSON.html ) 创建例如:
SELECT ST_AsGeoJSON('LINESTRING(77.29 29.07,77.42 29.26,77.27 29.31,77.29 29.07)');
Output:
{"type":"LineString","coordinates":[[77.29,29.07],[77.42,29.26],[77.27,29.31],[77.29,29.07]]}
Run Code Online (Sandbox Code Playgroud)
但是,我希望创建一个输出,如下所示:
{"type":"LineString","coordinates":[{"x":77.29,"y":29.07},{"x":77.42,"y":29.26},{"x":77.27,"y":29.31},{"x":77.29,"y":29.07}]}
Run Code Online (Sandbox Code Playgroud)
请注意,我正在为所有类型的几何对象寻找通用解决方案。谢谢
我有一个包含许多唯一单词的数据框。我想在R中创建代码,其中每个单词都将与所有单词进行比较,并创建一个矩阵,其中每个单词对的最大单词的长度。
为了更全面,请考虑以下示例。
test <- c("hello", "hi", "play", "kid")
Run Code Online (Sandbox Code Playgroud)
我想创建一个矩阵来比较测试中的每个单词,并给出最大单词的长度。
对于前面的示例,我想采用以下矩阵:
hello hi play kid
hello 5 5 5 5
hi 5 2 4 3
play 5 4 4 4
kid 5 3 4 3
Run Code Online (Sandbox Code Playgroud)
我如何在R中做到这一点?
r ×2
text-mining ×2
comparison ×1
dataframe ×1
distance ×1
geojson ×1
matrix ×1
postgis ×1
postgresql ×1
text ×1