利用R語言進行基本資料管理

2021-09-05 09:26:57 字數 2559 閱讀 3370

####建立leadership資料框

manager <- c(1, 2, 3, 4, 5)

date <- c("10/24/08", "10/28/08", "10/1/08", "10/12/08", "5/1/09")

country <- c("us", "us", "uk", "uk", "uk")

gender <- c("m", "f", "f", "m", "f")

age <- c(32, 45, 25, 39, 99)

q1 <- c(5, 3, 3, 3, 2)

q2 <- c(4, 5, 5, 3, 2)

q3 <- c(5, 2, 5, 4, 1)

q4 <- c(5, 5, 5, na, 2)

q5 <- c(5, 5, 2, na, 1)

leadership <- data.frame(manager, date, country, gender, age,

q1, q2, q3, q4, q5,stringsasfactors = false)

####建立新變數

my_data <- data.frame(x1 = c(2, 2, 6, 4),

x2 = c(3, 4, 2, 8))

my_data <- transform(my_data,

sum_x = x1 + x2,

mean_x = (x1 + x2)/2)

my_data

####變數的重編碼

leadership

leadership$age[leadership$age == 99] <- na

leadership$age[leadership$age > 75] <- "elder"

leadership$age[leadership$age >= 55 &

leadership$age <= 75] <- "middle aged"

leadership$age[leadership$age < 55] <- "young"

#等價於

leadership <- within(leadership, )

####變數的重新命名

names(leadership)

names(leadership)[2] <- "test_date"

####缺失值

is.na(leadership[,c(6:10)])

#排除缺失值

x <- c(1, 2, na, 3)

y <- sum(x,na.rm = true)

(new_data <- na.omit(leadership))

####日期值

str_date <- c("01/05/1965", "08/16/1975")

(dates <- as.date(str_date, "%m/%d/%y"))

#計算時間間隔

today <- sys.date()

dob <- as.date("1990-8-30")

difftime(today, dob, units = "days")

####型別轉換

a <- c(1, 2, 3)

is.numeric(a)

is.character(a)

is.vector(a)

is.matrix(a)

is.data.frame(a)

is.factor(a)

is.logical(a)

####資料排序

with(leadership, )

####資料集的合併

#向資料框新增列

total <- merge(dataframe1,dataframe2, by=c("id", "country"))

#向資料框中新增行

total <- rbind(dataframe1, dataframe2)

####資料集取子集

#選入變數

my_vars <- c("q1", "q2")

(new_data <- leadership[my_vars])

#剔除變數

my_vars <- names(leadership) %in% c("q3", "q4")

(new_data <- leadership[!my_vars])

#最好的方法——subset()

new_data <- subset(leadership, age >= 35 | age < 24,

select = c(q1,q2))

new_data

#隨機抽樣

(my_sample <- leadership[sample(1:nrow(leadership), 3, replace = false),])

####使用sql語句運算元據框

library(sqldf)

(new_df <- sqldf("select * from mtcars where carb=1 order by mpg",

row.names=true))

R 基本資料管理

manager c 1,2,3,4,5 date c 10 24 08 10 28 08 10 1 08 10 12 08 5 1 09 country c us us uk uk uk gender c m f f m f age c 32,45,25,39,99 q1 c 5,3,3,3,2 q...

R語言實戰學習筆記(三)基本資料管理

在乙個資料框裡面加入新的變數的方法有三種,第一種是直接 引用新增,一種是用attach detach 第三種是用transform 函式。具體例子如下 mydata裡面已經存在x1和x2兩個變數 方法一 mydata sumx mydata x1 mydata x2 mydata meanx myd...

R語言 基本資料分析

本文基於r語言進行基本資料統計分析,包括基本作圖,線性擬合,邏輯回歸,bootstrap取樣和anova方差分析的實現及應用。不多說,直接上 中有注釋。1.基本作圖 盒圖,qq圖 basic plot boxplot x qqplot x,y 2.線性擬合 linear regression n 1...