English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
데이터 프레임(Data frame)는 우리가 일반적으로 "표"라고 하는 것을 이해할 수 있습니다.
데이터 프레임은 R 언어의 데이터 구조로, 특별한 이차 리스트입니다.
데이터 프레임의 각 열은 독특한 열 이름을 가지며, 길이는 모두 같습니다. 동일한 열의 데이터 타입은 일관되어야 하며, 다른 열의 데이터 타입은 다를 수 있습니다.
R 언어 데이터 프레임은 data.frame() 함수를 사용하여 생성됩니다. 문법 형식은 다음과 같습니다:
data.frame(…, row.names = NULL, check.rows = FALSE, check.names = TRUE, fix.empty.names = TRUE, stringsAsFactors = default.stringsAsFactors())
...: 열 벡터, 어떤 타입이든 될 수 있습니다. (문자형, 숫자형, 논리형), 일반적으로 tag = value 형식으로 표현되거나 value만으로 표현될 수 있습니다.
row.names: 행 이름, 기본적으로 NULL로 설정됩니다. 단일 숫자, 문자열 또는 문자열과 숫자의 벡터로 설정할 수 있습니다.
check.rows: check whether the names and lengths of the rows are consistent.
check.names: check whether the variable names of the data frame are valid.
fix.empty.names: boolean value, whether to automatically set names for unnamed parameters.
stringsAsFactors: boolean value, whether to automatically set names for unnamed parameters.-: boolean value, whether to convert characters to factors, factory
fresh 的默认值是 TRUE,可以通过设置选项(stringsAsFactors=FALSE)来修改。
table = data.frame( 이름 = c("장산", "이지"), 공 번호 = c("001","002"), 월급 = c(1000, 2000) ) 以下创建一个简单的数据框,包含姓名、工号、月薪:
위의 코드를 실행하면 결과가 출력됩니다:
이름 공 번호 월급 1 장산 001 1000 2 이사 002 2000
print(table) # 查看 table 数据 数据框的数据结构可以通过 str()
table = data.frame( 이름 = c("장산", "이지"), 공 번호 = c("001","002"), 월급 = c(1000, 2000) ) 函数来展示: # 获取数据结构
위의 코드를 실행하면 결과가 출력됩니다:
'data.frame': 2 obs. of 3 variables: $ 姓名: chr "张三" "李四" $ 工号: chr "001" "002" $ 月薪: num 1000 2000
summary() 可以显示数据框的概要信息:
table = data.frame( 이름 = c("장산", "이지"), 공 번호 = c("001","002"), 월급 = c(1000, 2000) ) # 显示概要 print(summary(table))
위의 코드를 실행하면 결과가 출력됩니다:
이름 직원번호 직원번호 월급 Length:2 Length:2 Min. :1000 Class :character Class :character 1st Qu. :1250 Mode :character Mode :character Median :1500 Mean :1500 3rd Qu. :1750 Max. :2000
我们也可以提取指定的列:
table = data.frame( 이름 = c("장산", "이지"), 공 번호 = c("001","002"), 월급 = c(1000, 2000) ) # 提取指定的列 result <- data.frame(table$이름,table$月薪) print(result)
위의 코드를 실행하면 결과가 출력됩니다:
table.이름 table.월급 1 장산 1000 2 이지 2000
以下形式显示前面两行:
table = data.frame( 이름 = c("장산", "이사","왕오"), 공 번호 = c("001","002","003"), 월급 = c(1000, 2000,3000) ) print(table) # 提取前面两行 print("---输出前面两行----]) result <- table[1:2,] print(result)
위의 코드를 실행하면 결과가 출력됩니다:
이름 공 번호 월급 1 장산 001 1000 2 이사 002 2000 3 왕오 003 3000 [1}"---输出前面两行----" 이름 공 번호 월급 1 장산 001 1000 2 이사 002 2000
지정된 행의 특정 열 데이터를 좌표와 유사한 형식으로 읽을 수 있습니다. 다음에서 행 번호 2 、3 # 행 번호 1 、2 행 데이터::
table = data.frame( 이름 = c("장산", "이사","왕오"), 공 번호 = c("001","002","003"), 월급 = c(1000, 2000,3000) ) # 행 번호 2 、3 # 행 번호 1 、2 행 데이터: result <- table[c(2,3)),c(1,2)] print(result)
위의 코드를 실행하면 결과가 출력됩니다:
이름 직원번호 2 이사 002 3 왕오 003
기존 데이터 프레임을 확장할 수 있습니다. 다음 예제에서 부서 열을 추가합니다:
table = data.frame( 이름 = c("장산", "이사","왕오"), 공 번호 = c("001","002","003"), 월급 = c(1000, 2000,3000) ) # 부서 열 추가 table$부서 <- c("운영","기술","편집") print(table)
위의 코드를 실행하면 결과가 출력됩니다:
이름 직원번호 월급 부서 1 장산 001 1000 운영 2 이사 002 2000 기술 3 왕오 003 3000 편집
사용할 수 있습니다 cbind() 함수는 여러 벡터를 하나의 데이터 프레임으로 병합합니다:
# 벡터 생성 sites <- c("Google","w3codebox","Taobao") likes <- c(222,111,123) url <- c("www.google.com","ko.oldtoolbag.com","www.taobao.com") # 벡터를 데이터 프레임으로 병합 addresses <- cbind(sites,likes,url) # 데이터 프레임 확인 print(addresses)
위의 코드를 실행하면 결과가 출력됩니다:
sites likes url [1,] "Google" "222" "www.google.com" [2,] "w3codebox" "111" "ko.oldtoolbag.com" [3,] "Taobao" "123" "www.taobao.com"
두 데이터 프레임을 병합하려면 사용할 수 있습니다 rbind() 함수:
table = data.frame( 이름 = c("장산", "이사","왕오"), 공 번호 = c("001","002","003"), 월급 = c(1000, 2000,3000) ) newtable = data.frame( 이름 = c("영민", "초보자"), 공 번호 = c("101",102"), 월급 = c(5000, 7000) ) # 두 데이터 프레임을 병합 result <- rbind(table,newtable) print(result)
위의 코드를 실행하면 결과가 출력됩니다:
이름 공 번호 월급 1 장산 001 1000 2 이사 002 2000 3 왕오 003 3000 4 영민 101 5000 5 초보자 102 7000