[試題] 108-1 林明仁 資料科學與社會研究 期中考

作者: Toeic1000 (鄉民多益都1000)   2020-06-28 23:10:08
課程名稱︰資料科學與社會研究
課程性質︰經濟系/所選修
課程教師︰林明仁、謝吉隆
開課學院:社會科學院
開課系所︰經濟系
考試日期(年月日)︰2019/10/28
考試時限(分鐘):120分鐘
綠色的部分為程式碼、變項或變項的值
藍色的部分為程式碼跑出的結果或data frame表格
試題 :
1.(5分)
options(stringAsFactor = False)的options()功能為何?
又為何要設定stringAsFactor = False?
2.(5分)
若想要印出一個名為df的data.frame前六筆資料出來觀察,要怎麼寫?
3.(5分)
請分別解釋下列這行程式碼:
ubike.list <- fromJSON(content(GET(url), "text", encoding - "utf-8"))
的GET(url)、content()、fromJSON()三個函式的功能。
4.(5分)
現有一df存有各縣市(county)及縣市面積(area),以及縣市所轄各項鎮市區(town)的人
口數(population),我想要用dplyr計算各縣市的人口密度,要怎麼寫?
5.(5分)
我現在讀取了一個檔案raw <- read.csv("twdata/opendata107Y030.csv"),發現第一列
為中文變項名稱,我打算刪除第一列要怎麼做(用base或dplyr的寫法均可)?
6.(5分)
用dplyr將df(某個data frame)的兩個變項var1與var2相加後產生新的變項var3,並將整
個結果指給名為df1的新data frame。
7.(5分)
我現在有個data.frame為df1,中有三個變項name、height、weight,現在我要照著
height排序所有資料,用dplyr要怎麼做?
8.(5分)
現在我有三個data.frame分別為df1、df2、df3,請寫出程式碼以將之儲存成檔名為
test.rda的檔案。儲存為rds檔和rda檔在儲存與後續使用上有何差異?
9.(5分)
用dplyr篩除某一data frame df中var1或var2有NA的所有資料列,最後Assign以覆蓋掉
原本的df。
10.(5分)
我有一個data frame df,education變項的值有國中、高中、大學、研究所、博士,我
現在想建立一個新變項univ,如果是大學以上學歷,univ的值為TRUE,不然的話就是
FALSE。請用dplyr寫出符合要求的程式碼。
11.(5分)
有以下df中的資料6845列,我分析時想著重分析sentence_type變項中,BACKGROUND與
METHODS兩個類別,其他的資料我不想要,請問用dplyr要怎麼寫?
Created Date sentence sentence_type
2018-01-11 Rapid popularity of... BACKGROUND
2018-01-11 To ensure secure and... OBJECTIVES
2018-01-11 This paper introduces... METHODS
2018-01-11 The proposed TMM utilizes... METHODS
2018-01-11 In cortrast to the existing... RESULTS
2018-01-11 With the growing usage of... CONCLUSIONS
12.(5分)
下方第一個data frame名為df1,下方第二個data frame名為df2,請寫程式碼將df1展為
df2的型態?又如何寫程式碼將df2轉為df1的型態?(主要分數在前問號,後方問號寫出
函式名稱就算分)
df1
time reigon n
<chr> <chr> <int>
01 中山 25
01 中正 12
01 信義 9
01 內湖 11
df2
time 中山 中正 信義 內湖
1 00 0 2 0 1
2 01 27 12 10 11
3 02 1 0 1 0
4 04 17 10 11 20
13.(5分)
若想獲得以下print的執行結果,兩個# add some code here分別應填入什麼程式碼?
vec <- c(10, 20, 30)
for( # add some code here ){
#add some code here
}
[1] "1th item: 10"
[1] "2th item: 20"
[1] "3th item: 30"
14.(5分)
以下為ptt的post資料截圖和strptime()的時間辨識子(identifier),ptime目前仍為
文字格式,我想把他轉為R的datetime,請問辨識子要怎麼寫?
posts <- allp.df %>%
mutate(ptime = as.POSIXct(strptime(ptime, "YOUR CODE HERE"))) %>%
-%Y: Year with country
-%a: Abbreviated weekday name
-%X: Time. Locale-specific on output, "%H:%M:%S" on input
-%b: Abbreviated month name
-%e: Day of the month as decimal number (1-31)
ptitle ptime ipaddr
Re:[新聞]重申反對一國... Fri Apr 12 10:21:14 2019 83.221.204.163
NA NA NA
Re:[討論]民進黨真的很... Fri Apr 12 10:13:45 2019 1.114.43.176.110
Re:[新聞]哈佛演講,韓... Fri Apr 12 10:10:18 2019 118.163.130.181
Re:[討論]韓國瑜想選總... Fri Apr 12 10:03:14 2019 118.160.114.98
15.(10分)
承上題,我想要偵測ipaddr這個網址資料是否正確,但又不想刪除不符合的資料。如果偵
測到正確的網址,新產生的ipok的變項便為TRUE,反之為FALSE。請問辨識網址是否正確
的regular expression要怎麼寫(5分)?辨識是否合乎這段regular expression並產生
上述新變項的dplyr要如何寫(5分)?
16.(5分)
你應如何逐步排除以下程式碼的錯誤?你可以嘗試說明可能的問題並解決之。
> comp(vec1)
Error in comp(vec1) : could not find function "comp"
17.(5分)
寫出下列程式碼的執行結果
pname <- c("pttid1111(kefan)", "pid2(hangfan)")
str_extract(pname, "\\w")
str_extract(pname, "\\w+")
str_extract(pname, "[A-Za-z0-9]+")
str_extract(pname, "[A-Za-z0-9]{8}")
str_extract(pname, "[A-Za-z0-9]{1,8}")
18.(5分)
作為老師經常要向初學者解釋install.packages("tidyr")與library(tidyr),請嘗試解
釋這兩個函式相較下分別在做什麼。
19.(5分)
嘗試用JSON格式表述以下的表格中的資料
id name gender
A001 Alice F
A002 Bob M

Links booklink

Contact Us: admin [ a t ] ucptt.com