Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
获得';NA';在R中的性别数据包中找不到性别_R_Missing Data - Fatal编程技术网

获得';NA';在R中的性别数据包中找不到性别

获得';NA';在R中的性别数据包中找不到性别,r,missing-data,R,Missing Data,我想知道我如何才能得到所有的价值,不能与性别包处理。请查看以下代码: 图书馆(性别) test=tibble::tribble( ~Name1, “彼得”, “苏珊”, “纽伦堡”, “测试”, “海子”, “他” ) test$Name1给定test作为名称的“矩阵”(实际上是一个tible),您只需使用dplyr::right\u join(),如下所示 library(gender) library(dplyr) # ... # Your code to get the 'test' d

我想知道我如何才能得到所有的价值,不能与性别包处理。请查看以下代码:

图书馆(性别)
test=tibble::tribble(
~Name1,
“彼得”,
“苏珊”,
“纽伦堡”,
“测试”,
“海子”,
“他”
)

test$Name1给定
test
作为名称的“矩阵”(实际上是一个
tible
),您只需使用
dplyr::right\u join()
,如下所示

library(gender)
library(dplyr)

# ...
# Your code to get the 'test' dataset of names.
# ...

# Consolidate any names (Name1, Name2, ...) into a single column.
consolidated <- data.frame(all_names = as.character(as.vector(as.matrix(test))))

# Get the gender predictions.
genderpred <- gender(consolidated$all_names, method = "ssa")

# Perform the join using the consolidated names.
genderpred <- genderpred %>%
  right_join(consolidated, by = c("name" = "all_names"))
通过使用
右键连接
,您可以包括
测试
中的所有名称:而不仅仅是那些在
genderpred
中具有匹配的
名称的名称。当这样的名称(如
“Nuernberg”
)不匹配时,它将填充一个“空白”的新行(用
NA
s填充)

可以找到
join
s的
dplyr
文档

更新 根据海报,我扩展了代码(如上),以处理
test
中的多个名称列。因此,初始
测试
数据集

test <- tibble::tribble(
  ~Name1,      ~Name2,       # ...  ~Name_n
  "Peter",     "Gary",       # ...     .
  "Susan",     "Mary",       # ...     .
  "Nuernberg", "Heisenberg", # ...     .
  "Test",      "And",        # ...     .
  "Heiko",     "So",         # ...     .
  "He",        "Forth"       # ...     .
)

然后可以根据需要对其进行过滤(
dplyr::filter()
)和排序(
dplyr::arrange()
)。

给定
test
作为名称的“矩阵”(实际上是一个
tibble
),您可以简单地使用
dplyr::right\u join()

library(gender)
library(dplyr)

# ...
# Your code to get the 'test' dataset of names.
# ...

# Consolidate any names (Name1, Name2, ...) into a single column.
consolidated <- data.frame(all_names = as.character(as.vector(as.matrix(test))))

# Get the gender predictions.
genderpred <- gender(consolidated$all_names, method = "ssa")

# Perform the join using the consolidated names.
genderpred <- genderpred %>%
  right_join(consolidated, by = c("name" = "all_names"))
通过使用
右键连接
,您可以包括
测试
中的所有名称:而不仅仅是那些在
genderpred
中具有匹配的
名称的名称。当这样的名称(如
“Nuernberg”
)不匹配时,它将填充一个“空白”的新行(用
NA
s填充)

可以找到
join
s的
dplyr
文档

更新 根据海报,我扩展了代码(如上),以处理
test
中的多个名称列。因此,初始
测试
数据集

test <- tibble::tribble(
  ~Name1,      ~Name2,       # ...  ~Name_n
  "Peter",     "Gary",       # ...     .
  "Susan",     "Mary",       # ...     .
  "Nuernberg", "Heisenberg", # ...     .
  "Test",      "And",        # ...     .
  "Heiko",     "So",         # ...     .
  "He",        "Forth"       # ...     .
)

然后可以根据需要对其进行筛选(
dplyr::filter()
)和排序(
dplyr::arrange()
)。

感谢您的帮助!但是,如果我有一个包含多列的矩阵,而不是像我的示例中所有名称都存储在“name1”下那样只有一个维度,那么我该怎么做呢?我不知道为什么需要一个包含多个名称列的
test
矩阵。这就是说,如果您希望得到与上面我的
genderpred
相同形式的结果,您可以在执行联接时将
test
合并到一个
name
列中。我将很快添加一个编辑。您好@MaxH.,我刚刚更新了代码以处理带有多个名称列的
测试
矩阵。谢谢您的帮助!但是,如果我有一个包含多列的矩阵,而不是像我的示例中所有名称都存储在“name1”下那样只有一个维度,那么我该怎么做呢?我不知道为什么需要一个包含多个名称列的
test
矩阵。这就是说,如果您希望得到与上面我的
genderpred
相同形式的结果,您可以在执行联接时将
test
合并到一个
name
列中。我将很快添加一个编辑来达到这个效果。Hi@MaxH.,我刚刚更新了代码来处理一个带有多个名称列的
test
矩阵。