你可以在R中使用sink()函数将数据传送到外部连接。
大家好,今天我们将探讨R中sink()函数的应用。我们将尝试建立多种格式的连接,如文本和csv文件类型。
使用sink()函数,你可以打印数据,也可以将数据或R输出导出为文本或CSV文件。
让我们看看它是如何工作的!
R中sink()函数的语法
Sink(): sink函数用于将在R中获取的输出传送到外部连接。
sink(file = NULL, type = c("output", "message"),split = FALSE)
其中:
- File = 可编辑的连接或文件类型。
- Append = 用于将数据追加到文件中以避免覆盖的逻辑函数。
- Split = 输出将被重定向到新的连接或链接。
1. 设置工作目录
使用 sink() 函数的帮助,您可以轻松将输出作为连接打印到文本文件中。我们可以通过设置工作目录来开始此过程。
要检查当前工作目录:
#返回当前工作目录
getwd()
"C:/Users/Dell/Desktop/rfiles"
好的。现在我们得到了工作目录。您也可以使用以下方法更改工作目录:
#设置新的工作目录
setwd("The directory path here")
将路径粘贴到 setwd() 函数中以设置新的工作目录。之后不要忘记使用上面显示的 ‘getwd()’ 命令确认更改。
2. 将数据打印到文本文件
I hope you are ready with your working path now. Now we are going to create a file connection and print some data into it.
让我们看看它是如何工作的。
#将数据作为文本文件打印到连接中
sink("my_first_sink.txt")
#打印从 1 到 20 的数字
for (i in 1:20)
print(i)
sink()
现在您可以看到我们的 R 数据被整齐地打印到文本文件中。很棒,对吧?
3. 将数据导出到文本文件
在前一節中,我們已經將數據或輸出打印到文本文件中。在這一節中,我們將匯出R默認情況下可用的整個數據集。
讓我們看看它是如何工作的。
#將數據作為文本文件匯出
sink('export_dataframe.txt')
airquality
sink()
您可以看到空氣質量數據集的數據被傳送到文本文件作為外部連接。
這就是您可以輕松將數據在R中傳送到連接的方法。您還可以導出為CSV文件,如下所示。
4. 數據框匯出為CSV文件
在這一節中,我們將使用R中的sink()函數來驅動或將數據匯出為CSV文件。讓我們看看它是如何工作的。
#將數據作為CSV文件匯出
sink('export_dataframe_1.csv')
iris
sink()
這是一個包含從R控制台導出的數據的CSV文件。在R中,sink()函數提供了將數據傳送到外部連接(如文件)的最簡單方法。
將數據摘要導出到連接處
到目前為止,一切順利。現在,讓我們嘗試將上述部分學到的或理解到的應用在一起。
問題描述很簡單。
=> 選擇一個數據集,使用 summary() 函數獲取數據摘要。完成後,將結果輸出到文本文件作為連接。
讓我們開始吧!
1. 讓我們讀取數據
#讀取數據
df<-datasets::airquality
df
View(df)
問題描述的第一步在這裡。您可以在上圖中看到空氣質量數據集。
2. 數據的 summary()
使用 summary() 函數的數據摘要如下所示。
#返回數據的主要見解
summary(airquality)
Ozone Solar.R Wind Temp Month
Min. : 1.00 Min. : 7.0 Min. : 1.700 Min. :56.00 Min. :5.000
1st Qu.: 18.00 1st Qu.:115.8 1st Qu.: 7.400 1st Qu.:72.00 1st Qu.:6.000
Median : 31.50 Median :205.0 Median : 9.700 Median :79.00 Median :7.000
Mean : 42.13 Mean :185.9 Mean : 9.958 Mean :77.88 Mean :6.993
3rd Qu.: 63.25 3rd Qu.:258.8 3rd Qu.:11.500 3rd Qu.:85.00 3rd Qu.:8.000
Max. :168.00 Max. :334.0 Max. :20.700 Max. :97.00 Max. :9.000
NA's :37 NA's :7
Day
Min. : 1.0
1st Qu.: 8.0
Median :16.0
Mean :15.8
3rd Qu.:23.0
Max. :31.0
這是顯示最小值和最大值、四分位數、中位數、平均值等更多見解的數據摘要。
3. 將輸出驅動到連接
現在,您只需要將其導出到文本文件並將其作為外部連接。
# 將輸出數據驅動到 txt 文件
sink('problem-solution.txt')
summary(airquality)
sink()
4. 結束連接
您已經正確完成了所有步驟,並成功將數據作為外部連接驅動到文本文件中。
現在是時候結束連接了。
# 終止連接
unlink('problem-solution.txt')
上述命令將刪除文件連接。
總結所有步驟,
- 在 R 控制台中讀取數據。
- 對數據應用 summary() 函數。
- 獲取數據的關鍵見解。
- 使用 R 中的 sink() 函數將發現結果驅動到文本文件中。
結語
`sink()` 函數在 R 中將 R 輸出驅動到外部連接。您可以將數據以多種形式導出,例如文本和 CSV 文件。您可以將數據打印到連接中,也可以直接將整個數據導出到其中。
數據傳輸完成後,您可以取消連接以終止文件。
R 中的 `sink()` 函數在許多方面都很有用,因為它提供了臨時連接以處理數據。
更多閱讀: R 文件
Source:
https://www.digitalocean.com/community/tutorials/sink-function-in-r