Проблема в R датафрейме - PullRequest
0 голосов
/ 22 мая 2018

У меня есть текстовый файл с содержимым ниже

SCREEN_NAME
bdaff
sakassim
test

Приведенный ниже код выполняет в функции checknode переменную print (x [1]), отображающую имя экрана правильно.Но когда я использую значение в переменной cypher, он показывает 1,2,3 (установить результат в конце)

Пожалуйста, помогите ..

d = read.table("c:/sajudentick/tm/neoTest.txt", header = TRUE, sep = "")

checkNode <- function(x, graph, type) {
  #print(x[1])
  name1<-x[1]
  print(typeof(name1))
  print(name1)

  cipher<-  paste0("MATCH (n:",type, ") WHERE n.username  IN ['" ,name1 , 
                   "'] RETURN n")
  print(cipher)
  node_gr <- getNodes(graph,cipher)
  print(is.null(node_gr))
  if (is.null(node_gr)) {
    print("created")
    node_gr <- createNode(graph = graph, .label = type, x)
    #graph, "User", username=screenName
  }

  return(node_gr)

}

people_nodes <- d %>% by_row(checkNode, graph = graph, type = "User")



[1] "list"
# A tibble: 1 x 1
  value
  <fct>
1 bdaff
[1] "MATCH (n:User) WHERE n.username  IN ['1'] RETURN n"
[1] FALSE
[1] "list"
# A tibble: 1 x 1
  value   
  <fct>   
1 sakassim
[1] "MATCH (n:User) WHERE n.username  IN ['2'] RETURN n"
[1] FALSE
[1] "list"
# A tibble: 1 x 1
  value
  <fct>
1 test 
[1] "MATCH (n:User) WHERE n.username  IN ['3'] RETURN n"
[1] FALSE

1 Ответ

0 голосов
/ 22 мая 2018
checkNode <- function(x, graph, type) {
  #print(x[1])
  name1<-x[1]

Предполагая, что вы хотите получить значение переменной из фрейма данных, оно должно быть x[[1]].

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...