คำถามติดแท็ก r

R เป็นภาษาการเขียนโปรแกรมแบบโอเพนซอร์สและสภาพแวดล้อมซอฟต์แวร์สำหรับการคำนวณทางสถิติชีวสารสนเทศศาสตร์การสร้างภาพและการคำนวณทั่วไป โปรดให้ตัวอย่างที่น้อยที่สุดและทำซ้ำได้พร้อมกับผลลัพธ์ที่ต้องการ ใช้ `dput ()` สำหรับข้อมูลและระบุแพ็คเกจที่ไม่ใช่ฐานทั้งหมดด้วยการเรียก `library ()` อย่าฝังรูปภาพสำหรับข้อมูลหรือรหัสให้ใช้บล็อกรหัสเยื้องแทน สำหรับคำถามที่เกี่ยวข้องกับสถิติให้ใช้ https://stats.stackexchange.com

8
การสร้างตาราง Markdown แบบเป็นโปรแกรมใน R ด้วย KnitR
ฉันเพิ่งเริ่มเรียนรู้เกี่ยวกับ KnitR และการใช้ Markdown ในการสร้างเอกสาร R และรายงาน สิ่งนี้ดูจะเหมาะสำหรับการรายงานประจำวันที่ฉันต้องทำกับงานของฉัน อย่างไรก็ตามสิ่งหนึ่งที่ฉันไม่เห็นคือวิธีง่ายๆในการพิมพ์เฟรมข้อมูลและตารางโดยใช้การจัดรูปแบบ Markdown (คล้ายxtableกัน แต่ใช้ Markdown แทน LaTeX หรือ HTML) ฉันรู้ว่าฉันสามารถฝังเอาต์พุต HTML จาก xtable ได้ แต่ฉันสงสัยว่ามีโซลูชันที่ใช้ Markdown หรือไม่?
103 r  markdown  knitr  r-markdown 

8
การล้างค่า "Inf" จาก R dataframe
ใน R ฉันมีการดำเนินการที่สร้างInfค่าบางอย่างเมื่อฉันแปลงดาต้าเฟรม ฉันต้องการเปลี่ยนInfค่าเหล่านี้ให้เป็นNAค่านิยม รหัสที่ฉันมีช้าสำหรับข้อมูลขนาดใหญ่มีวิธีที่เร็วกว่านี้ไหม สมมติว่าฉันมี dataframe ต่อไปนี้: dat <- data.frame(a=c(1, Inf), b=c(Inf, 3), d=c("a","b")) ต่อไปนี้ใช้งานได้ในกรณีเดียว: dat[,1][is.infinite(dat[,1])] = NA ดังนั้นฉันจึงสรุปมันด้วยลูปต่อไปนี้ cf_DFinf2NA <- function(x) { for (i in 1:ncol(x)){ x[,i][is.infinite(x[,i])] = NA } return(x) } แต่คิดไม่ถึงว่านี่คือการใช้พลังของอาร์จริงๆ
103 r  dataframe  data.table 

8
วิธีเพิ่มพื้นผิวเพื่อเติมสีใน ggplot2
ฉันกำลังใช้scale_brewer()สำหรับเติมสีและสีเหล่านี้ดูสวยงาม (บนหน้าจอและผ่านเครื่องพิมพ์สี) แต่พิมพ์ค่อนข้างสม่ำเสมอเป็นสีเทาเมื่อใช้เครื่องพิมพ์ขาวดำ ฉันค้นหาggplot2เอกสารออนไลน์แต่ไม่เห็นอะไรเกี่ยวกับการเพิ่มพื้นผิวเพื่อเติมสี มีggplot2วิธีอย่างเป็นทางการในการทำเช่นนี้หรือใครมีแฮ็คที่พวกเขาใช้? ตามพื้นผิวฉันหมายถึงสิ่งต่างๆเช่นแท่งทแยงมุมแท่งทแยงมุมย้อนกลับรูปแบบจุด ฯลฯ ที่จะแยกสีเติมเมื่อพิมพ์เป็นขาวดำ
103 r  ggplot2 

10
แปลงสตริงเป็นชื่อตัวแปร
ฉันใช้ R เพื่อแยกวิเคราะห์รายการสตริงในรูปแบบ: original_string <- "variable_name=variable_value" ขั้นแรกฉันแยกชื่อตัวแปรและค่าจากสตริงเดิมและแปลงค่าเป็นคลาสตัวเลข parameter_value <- as.numeric("variable_value") parameter_name <- "variable_name" จากนั้นฉันต้องการกำหนดค่าให้กับตัวแปรที่มีชื่อเดียวกับสตริง parameter_name variable_name <- parameter_value ฟังก์ชันนี้คืออะไร / คืออะไร?
103 string  r 

10
ถอดแพ็คเกจทั้งหมดขณะทำงานใน R
ในขณะที่ทำงานเพื่อแก้ไขปัญหาอื่นฉันพบปัญหานี้: ฉันสามารถลบวัตถุ R ทั้งหมดโดย: rm(list = ls(all = TRUE)) มีคำสั่งที่เทียบเท่ากันที่สามารถแยกแพ็คเกจที่ติดตั้งระหว่างเซสชันการทำงานได้หรือไม่? > sessionInfo() R version 2.12.2 (2011-02-25) Platform: i386-pc-mingw32/i386 (32-bit) locale: [1] LC_COLLATE=English_United States.1252 [2] LC_CTYPE=English_United States.1252 [3] LC_MONETARY=English_United States.1252 [4] LC_NUMERIC=C [5] LC_TIME=English_United States.1252 attached base packages: [1] stats graphics grDevices utils datasets methods base ต้องการ (ggplot2) Loading required package: …
103 r  workspace 

6
ฉันจะสร้างเมทริกซ์จากรายการเวกเตอร์ใน R ได้อย่างไร
เป้าหมาย: จากรายการเวกเตอร์ที่มีความยาวเท่ากันสร้างเมทริกซ์โดยที่เวกเตอร์แต่ละตัวจะกลายเป็นแถว ตัวอย่าง: > a <- list() > for (i in 1:10) a[[i]] <- c(i,1:5) > a [[1]] [1] 1 1 2 3 4 5 [[2]] [1] 2 1 2 3 4 5 [[3]] [1] 3 1 2 3 4 5 [[4]] [1] 4 1 2 3 4 5 [[5]] …
102 r  matrix  vector 

6
ส่งผ่านอาร์กิวเมนต์บรรทัดคำสั่งไปยัง R CMD BATCH
ฉันใช้R CMD BATCH my_script.Rจากเทอร์มินัลเพื่อเรียกใช้Rสคริปต์ ตอนนี้ฉันอยู่ในจุดที่ฉันต้องการส่งต่อข้อโต้แย้งไปยังคำสั่ง แต่กำลังมีปัญหาบางอย่างในการทำให้มันใช้งานได้ ถ้าผมทำR CMD BATCH my_script.R blablaแล้วblablaจะกลายเป็นไฟล์ที่ส่งออกมากกว่าการถูกตีความว่าเป็นข้อโต้แย้งที่มีอยู่ไปยังสคริปต์ R ที่กำลังดำเนินการ ฉันได้ลองRscript my_script.R blablaซึ่งดูเหมือนว่าจะส่งต่อblablaอย่างถูกต้องเป็นอาร์กิวเมนต์ แต่ฉันไม่ได้รับmy_script.Routไฟล์เอาต์พุตที่ฉันได้รับR CMD BATCH(ฉันต้องการ.Routไฟล์) ในขณะที่ฉันสามารถเปลี่ยนทิศทางผลลัพธ์ของการโทรไปRscriptยังชื่อไฟล์ที่ฉันเลือก แต่ฉันจะไม่ได้รับคำสั่งอินพุต R ที่รวมอยู่ในไฟล์ในลักษณะที่R CMD BATCHทำใน.Routไฟล์ โดยหลักการแล้วฉันใช้วิธีส่งอาร์กิวเมนต์ไปยังสคริปต์ R ที่ดำเนินการผ่านR CMD BATCHวิธีการนี้แม้ว่าจะมีความสุขกับวิธีการที่ใช้Rscriptหากมีวิธีที่จะทำให้มันสร้าง.Routไฟล์ที่เทียบเคียงได้
102 r  rscript 

1
ตั้งค่ามิเรอร์ CRAN เริ่มต้นแบบถาวรใน R
ฉันจะตั้งค่ามิเรอร์ CRAN เฉพาะอย่างถาวรใน R ได้อย่างไร ฉันต้องการตั้งค่าอย่างถาวรในแล็ปท็อปของฉันเพื่อที่ว่าinstall.packages()จะได้ไม่ถามฉันอีกว่าจะเลือกกระจกแบบไหน
102 r  cran  r-faq 

7
ตำแหน่งป้ายชื่อจุดอัจฉริยะใน R
1) มี R ไลบรารี / ฟังก์ชันใดบ้างที่จะใช้การจัดวางป้ายกำกับอัจฉริยะใน R plot ฉันลองใช้บ้าง แต่ก็มีปัญหาทั้งหมด - ป้ายกำกับจำนวนมากซ้อนทับกันหรือจุดอื่น ๆ (หรือวัตถุอื่น ๆ ในพล็อต แต่ฉันเห็นว่ามันยากกว่ามากที่จะจัดการ) 2) หากไม่เป็นเช่นนั้นมีวิธีใดบ้างที่จะช่วยให้อัลกอริทึมสะดวกสบายในการจัดวางฉลากสำหรับจุดที่มีปัญหา ต้องการโซลูชันที่สะดวกสบายและมีประสิทธิภาพที่สุด คุณสามารถเล่นและทดสอบความเป็นไปได้อื่น ๆ ด้วยตัวอย่างที่ทำซ้ำได้ของฉันและดูว่าคุณสามารถบรรลุผลลัพธ์ที่ดีกว่าที่ฉันมีได้หรือไม่: # data x = c(0.8846, 1.1554, 0.9317, 0.9703, 0.9053, 0.9454, 1.0146, 0.9012, 0.9055, 1.3307) y = c(0.9828, 1.0329, 0.931, 1.3794, 0.9273, 0.9605, 1.0259, 0.9542, 0.9717, 0.9357) ShortSci …
102 r  plot  label 

6
Subscripts ในแปลงใน R
ฉันไม่พบวิธีการเขียนตัวห้อยในชื่อเรื่องหรือคำบรรยายใน R ฉันจะเขียน v 1,2 โดย 1,2 เป็นตัวห้อยได้อย่างไร ขอบคุณสำหรับความช่วยเหลือของคุณ!
102 r  plot  subscript 

4
ระบุรูปแบบวันที่ที่กำหนดเองสำหรับอาร์กิวเมนต์ colClasses ใน read.table / read.csv
คำถาม: มีวิธีระบุรูปแบบวันที่เมื่อใช้อาร์กิวเมนต์ colClasses ใน read.table / read.csv หรือไม่ (ฉันรู้ว่าฉันสามารถแปลงได้หลังจากนำเข้า แต่มีคอลัมน์วันที่มากมายเช่นนี้การทำในขั้นตอนการนำเข้าจะง่ายกว่า) ตัวอย่าง: ฉันมี .csv %d/%m/%Yมีคอลัมน์วันที่ในรูปแบบที่ dataImport <- read.csv("data.csv", colClasses = c("factor","factor","Date")) สิ่งนี้ทำให้การแปลงผิดพลาด ยกตัวอย่างเช่นจะกลายเป็น15/07/20080015-07-20 รหัสที่ทำซ้ำได้: data <- structure(list(func_loc = structure(c(1L, 2L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 5L), .Label = c("3076WAG0003", "3076WAG0004", "3076WAG0007", "3076WAG0009", "3076WAG0010"), class = "factor"), order_type = structure(c(3L, …
101 r  date  read.table  read.csv 

3
จะจัดการกับข้อผิดพลาด "data of class unval" จาก ggplot2 ได้อย่างไร
ในขณะที่พยายามซ้อนทับบรรทัดใหม่ไปยัง ggplot ที่มีอยู่ฉันได้รับข้อผิดพลาดต่อไปนี้: Error: ggplot2 doesn't know how to deal with data of class uneval ส่วนแรกของรหัสของฉันทำงานได้ดี ด้านล่างนี้คือภาพข้อมูลการสร้างลมรายชั่วโมง "ล่าสุด" จากตลาดพลังงานไฟฟ้าในแถบมิดเวสเทิร์นของสหรัฐอเมริกา ตอนนี้ฉันต้องการซ้อนทับค่าสังเกตสองวันที่ผ่านมาด้วยสีแดง มันควรจะง่าย แต่ฉันคิดไม่ออกว่าทำไมฉันถึงได้รับข้อผิดพลาด ความช่วยเหลือใด ๆ จะได้รับการชื่นชมอย่างมาก ด้านล่างนี้เป็นตัวอย่างที่ทำซ้ำได้: # Read in Wind data fname <- "https://www.midwestiso.org/Library/Repository/Market%20Reports/20130510_hwd_HIST.csv" df <- read.csv(fname, header=TRUE, sep="," , skip=7) df <- df[1:(length(df$MKTHOUR)-5),] # format variables df$MWh <- as.numeric(df$MWh) …
101 r  ggplot2 

2
วิธีเปลี่ยนขนาดฟอนต์เริ่มต้นใน ggplot2
ฉันต้องการทราบว่าเป็นไปได้ไหมที่จะเปลี่ยนพารามิเตอร์เริ่มต้นของggplot2กราฟิกเช่นขนาดตัวอักษรสำหรับเซสชัน R ทั้งหมด แนวคิดคือหลีกเลี่ยงการตั้งค่าสำหรับแต่ละพล็อต
101 r  ggplot2  default  font-size 

10
ทดสอบความเท่าเทียมกันระหว่างองค์ประกอบทั้งหมดของเวกเตอร์เดียว
ฉันกำลังพยายามทดสอบว่าองค์ประกอบทั้งหมดของเวกเตอร์มีค่าเท่ากันหรือไม่ length()โซลูชั่นฉันมีมากับดูเหมือนค่อนข้างวงเวียนทั้งที่เกี่ยวข้องกับการตรวจสอบ x <- c(1, 2, 3, 4, 5, 6, 1) # FALSE y <- rep(2, times = 7) # TRUE ด้วยunique(): length(unique(x)) == 1 length(unique(y)) == 1 ด้วยrle(): length(rle(x)$values) == 1 length(rle(y)$values) == 1 วิธีการแก้ปัญหาที่จะให้ฉันมีค่าความอดทนในการประเมิน 'ความเท่าเทียมกันในหมู่องค์ประกอบจะเหมาะที่จะหลีกเลี่ยงคำถามที่พบบ่อย 7.31ปัญหา มีฟังก์ชันในตัวสำหรับการทดสอบประเภทที่ฉันมองข้ามไปทั้งหมดหรือไม่? identical()และall.equal()เปรียบเทียบวัตถุ R สองชิ้นดังนั้นจึงใช้ไม่ได้ที่นี่ แก้ไข 1 นี่คือผลการเปรียบเทียบบางส่วน การใช้รหัส: library(rbenchmark) John <- function() …
101 r  vector  equality 

5
วิธีใช้ฟังก์ชัน 'กวาด'
เมื่อฉันดูที่มาของแพ็คเกจ R ฉันเห็นฟังก์ชันที่sweepใช้บ่อยมาก บางครั้งจะใช้เมื่อฟังก์ชันที่ง่ายกว่านั้นมีผลเพียงพอ (เช่นapply) ในบางครั้งก็เป็นไปไม่ได้ที่จะรู้ว่ากำลังทำอะไรอยู่โดยไม่ต้องใช้เวลาพอสมควรในการก้าวผ่านบล็อกโค้ดที่อยู่ในนั้น ความจริงที่ว่าฉันสามารถสร้างsweepเอฟเฟกต์ซ้ำได้โดยใช้ฟังก์ชันที่ง่ายกว่านั้นแสดงว่าฉันไม่เข้าใจsweepกรณีการใช้งานหลักของฉันและการที่ฟังก์ชันนี้ถูกใช้บ่อยครั้งแสดงให้เห็นว่ามันมีประโยชน์มากทีเดียว บริบท: sweepเป็นฟังก์ชันในไลบรารีมาตรฐานของ R ข้อโต้แย้งคือ: sweep(x, MARGIN, STATS, FUN="-", check.margin=T, ...) # x is the data # STATS refers to the summary statistics which you wish to 'sweep out' # FUN is the function used to carry out the sweep, "-" is the default …
101 r  statistics 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.