R 在函数内设置时,数据帧行/列的重新排序不起作用

R 在函数内设置时,数据帧行/列的重新排序不起作用,r,function,dataframe,R,Function,Dataframe,我想创建一个函数,对数据帧的行和列进行重新排序。然而,它不工作,但如果我尝试重新排序的数据帧手动一切都很好,所以我必须有一个基本的掌握如何重新排序 以下是我的功能: CorrOrder <- function (df, new_df) { new_order = c(19:24, 7:12, 1:6, 13:18) new_df <- df[new_order, new_order] } #This does absolutely nothing and doesn't

我想创建一个函数,对数据帧的行和列进行重新排序。然而,它不工作,但如果我尝试重新排序的数据帧手动一切都很好,所以我必须有一个基本的掌握如何重新排序

以下是我的功能:

CorrOrder <- function (df, new_df) {

  new_order = c(19:24, 7:12, 1:6, 13:18)

  new_df <- df[new_order, new_order]
}

#This does absolutely nothing and doesn't return an error

CorrOrder(AllData[["DataUnsorted"]][["DataFrameZXWY"]],
           AllData[["DataFrameWXYZ"]])

我认为有两件事出了问题:

  • new_df
    不应该是函数的输入值,而应该是输出值
  • 您的函数没有输出值
试试这个:

CorrOrder <- function(df) {
  new_order = c(19:24, 7:12, 1:6, 13:18)
  new_df <- df[new_order, new_order]
  return(new_df)
}

CorrOrder(AllData[["DataUnsorted"]][["DataFrameZXWY"]])

CorrOrder我认为有两件事出了问题:

  • new_df
    不应该是函数的输入值,而应该是输出值
  • 您的函数没有输出值
试试这个:

CorrOrder <- function(df) {
  new_order = c(19:24, 7:12, 1:6, 13:18)
  new_df <- df[new_order, new_order]
  return(new_df)
}

CorrOrder(AllData[["DataUnsorted"]][["DataFrameZXWY"]])

CorrOrder您的函数没有返回任何内容。例如,这也不会产生任何结果:

library(tidyverse)
df <- tibble(a = c(1, 2, 3))
test_function <- function(df) {
  df_new <- 
    df %>% 
    mutate(a = a + 2)
}
test_function(df)
库(tidyverse)

df您的函数没有返回任何内容。例如,这也不会产生任何结果:

library(tidyverse)
df <- tibble(a = c(1, 2, 3))
test_function <- function(df) {
  df_new <- 
    df %>% 
    mutate(a = a + 2)
}
test_function(df)
库(tidyverse)
df
test_function <- function(df) {
  df %>% 
    mutate(a = a + 2)
}
test_function <- function(df) {
  df_new <- 
    df %>% 
    mutate(a = a + 2)
  return(df_new)
}