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

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

9
แปลงรายการเฟรมข้อมูลเป็นกรอบข้อมูลเดียว
ฉันมีรหัสที่ท้ายสถานที่ด้วยรายการของ data frames ซึ่งฉันต้องการแปลงเป็น data data ขนาดใหญ่เพียงอันเดียว ฉันได้รับคำแนะนำจากคำถามก่อนหน้านี้ซึ่งพยายามทำสิ่งที่คล้ายกัน แต่ซับซ้อนกว่า นี่คือตัวอย่างของสิ่งที่ฉันเริ่มต้นด้วย (นี่ง่ายสำหรับการทำภาพประกอบ): listOfDataFrames <- vector(mode = "list", length = 100) for (i in 1:100) { listOfDataFrames[[i]] <- data.frame(a=sample(letters, 500, rep=T), b=rnorm(500), c=rnorm(500)) } ฉันกำลังใช้สิ่งนี้อยู่: df <- do.call("rbind", listOfDataFrames)
336 list  r  dataframe 

19
วิธีการเปลี่ยนชื่อคอลัมน์เดียวใน data.frame?
ฉันรู้ว่าฉันมีกรอบข้อมูลที่มีมากกว่า 1 คอลัมน์ฉันสามารถใช้ colnames(x) <- c("col1","col2") เพื่อเปลี่ยนชื่อคอลัมน์ ฉันจะทำเช่นนี้ได้อย่างไรหากเป็นเพียงหนึ่งคอลัมน์ ความหมายเวกเตอร์หรือกรอบข้อมูลที่มีเพียงหนึ่งคอลัมน์ในนั้น ตัวอย่าง: trSamp <- data.frame(sample(trainer$index, 10000)) head(trSamp ) # sample.trainer.index..10000. # 1 5907862 # 2 2181266 # 3 7368504 # 4 1949790 # 5 3475174 # 6 6062879 ncol(trSamp) # [1] 1 class(trSamp) # [1] "data.frame" class(trSamp[1]) # [1] "data.frame" class(trSamp[,1]) # …
335 r 

11
ตัวอย่างสุ่มแถวใน dataframe
ฉันกำลังพยายามหาฟังก์ชั่นที่เหมาะสมซึ่งจะคืนค่าจำนวนแถวที่ระบุแบบสุ่มโดยไม่ต้องเปลี่ยนจาก data frame ในภาษา R หรือไม่? ใครช่วยฉันออกได้บ้าง
333 r  dataframe  sample  r-faq 

4
มีฟังก์ชั่น R สำหรับค้นหาดัชนีขององค์ประกอบในเวกเตอร์หรือไม่?
ใน R ฉันมีองค์ประกอบและเวกเตอร์x vฉันต้องการที่จะหาดัชนีแรกขององค์ประกอบในการที่จะมีค่าเท่ากับv xฉันรู้ว่าวิธีหนึ่งในการทำเช่นนี้คือ: which(x == v)[[1]]แต่ดูเหมือนว่าจะไม่มีประสิทธิภาพมากเกินไป มีวิธีโดยตรงมากกว่าที่จะทำหรือไม่ สำหรับคะแนนโบนัสมีฟังก์ชั่นที่ใช้งานxได้หรือไม่ถ้าเป็นเวคเตอร์? นั่นคือมันควรจะกลับเวกเตอร์ของดัชนีระบุตำแหน่งขององค์ประกอบของแต่ละที่ในxv

12
วิธีการใช้รายการใน R อย่างถูกต้อง?
พื้นหลังโดยย่อ: ภาษาการเขียนโปรแกรมร่วมสมัยส่วนใหญ่ (มากที่สุด) ที่ใช้กันอย่างแพร่หลายมีอย่างน้อยหนึ่ง ADTs [ประเภทข้อมูลนามธรรม] โดยทั่วไปโดยเฉพาะ สตริง (ลำดับประกอบด้วยอักขระ) รายการ (ชุดของค่าสั่ง) และ ชนิดที่ยึดตามแผนที่ (อาร์เรย์ที่ไม่ได้เรียงลำดับที่จับคู่คีย์กับค่า) ในภาษาการเขียนโปรแกรม R ทั้งสองจะถูกนำมาใช้เป็นcharacterและvectorตามลำดับ เมื่อฉันเริ่มเรียนรู้ R มีสองสิ่งที่เห็นได้ชัดเจนตั้งแต่เริ่มต้น: listเป็นประเภทข้อมูลที่สำคัญที่สุดใน R (เพราะเป็นคลาสผู้ปกครองสำหรับ R data.frame) และที่สองฉันไม่เข้าใจวิธีการทำงานอย่างน้อย ไม่ดีพอที่จะใช้อย่างถูกต้องในรหัสของฉัน สำหรับสิ่งหนึ่งที่ดูเหมือนว่าlistประเภทข้อมูลของ R คือการใช้แผนที่ ADT ( dictionaryใน Python, NSMutableDictionaryObjective C, hashPerl และ Ruby, object literalJavascript และอื่น ๆ ) ตัวอย่างเช่นคุณสร้างพวกเขาเช่นเดียวกับที่คุณทำกับพจนานุกรม Python โดยส่งผ่านคู่ของคีย์ - ค่าไปยังตัวสร้าง (ซึ่งใน …

12
ฟังก์ชั่นเพื่อล้างคอนโซลใน R และ RStudio
ฉันสงสัยว่ามีฟังก์ชั่นในการล้างคอนโซลใน R หรือไม่โดยเฉพาะอย่างยิ่ง RStudio ฉันกำลังมองหาฟังก์ชั่นที่ฉันสามารถพิมพ์ลงในคอนโซลไม่ใช่แป้นพิมพ์ลัด ใครบางคนที่มีอยู่แล้วให้ฟังก์ชั่นดังกล่าวในการโพสต์ StackExchange นี้จาก 2010 น่าเสียดายที่สิ่งนี้ขึ้นอยู่กับแพ็คเกจ RCom และจะไม่ทำงานบน Mac OS X
319 r 

11
หนึ่งคอลัมน์ที่เรียงลำดับใหม่ใน data frame อย่างไร
เราจะเปลี่ยนอินพุตนี้อย่างไร (โดยมีลำดับ: เวลา, เข้า, ออก, ไฟล์): Time In Out Files 1 2 3 4 2 3 4 5 ไปที่เอาต์พุตนี้ (โดยมีลำดับ: time, out, in, files)? Time Out In Files 1 3 2 4 2 4 3 5 นี่คือข้อมูลจำลอง Dummy: table <- data.frame(Time=c(1,2), In=c(2,3), Out=c(3,4), Files=c(4,5)) table ## Time In Out Files …
311 r  sorting  dataframe  r-faq 

3
วิธีการบันทึกสล็อตคลาส S4 อย่างถูกต้องโดยใช้ Roxygen2
สำหรับการทำเอกสารคลาสที่มี roxygen (2) การระบุหัวเรื่องและคำอธิบาย / รายละเอียดดูเหมือนจะเหมือนกับฟังก์ชันวิธีการข้อมูลและอื่น ๆ อย่างไรก็ตามสล็อตและการสืบทอดเป็นสัตว์ประเภทของตัวเอง แนวปฏิบัติที่ดีที่สุด - ปัจจุบันหรือที่วางแผนไว้สำหรับการบันทึกคลาส S4 ใน roxygen2 คืออะไร ขยันเนื่องจาก: ฉันพบ@slotแท็กในคำอธิบายก่อนหน้าของ roxygen การโพสต์รายชื่อผู้รับจดหมาย R-forge ปี 2008 ดูเหมือนจะบ่งบอกว่านี่เป็นสิ่งที่ตายแล้วและไม่มีการสนับสนุน@slotใน roxygen: นี่เป็นความจริงของ roxygen2 หรือไม่ โพสต์ที่กล่าวถึงก่อนหน้านี้แนะนำให้ผู้ใช้ควรทำรายการแยกรายการของตนเองด้วยมาร์กอัป LaTeX เช่นคลาส S4 ใหม่ที่ขยาย"character"คลาสจะมีการเข้ารหัสและจัดทำเอกสารดังนี้: #' The title for my S4 class that extends \code{"character"} class. #' #' Some details about this class …
306 class  r  s4  slot  roxygen2 

5
การพล็อตตัวแปรสองตัวเป็นบรรทัดโดยใช้ ggplot2 บนกราฟเดียวกัน
เป็นคำถามที่ค่อนข้างใหม่ แต่บอกว่าฉันมีข้อมูลเช่นนี้: test_data <- data.frame( var0 = 100 + c(0, cumsum(runif(49, -20, 20))), var1 = 150 + c(0, cumsum(runif(49, -10, 10))), date = seq(as.Date("2002-01-01"), by="1 month", length.out=100) ) ฉันจะพล็อตทั้งอนุกรมเวลาvar0และvar1กราฟเดียวกันdateโดยใช้แกน x ได้ggplot2อย่างไร? คะแนนโบนัสหากคุณทำvar0และvar1สีที่แตกต่างและสามารถรวมตำนาน! ฉันแน่ใจว่ามันง่ายมาก แต่ฉันไม่สามารถหาตัวอย่างได้
305 r  ggplot2  graph  time-series  r-faq 

11
จะบันทึกพล็อตเป็นอิมเมจบนดิสก์ได้อย่างไร?
ฉันวางแผนการถดถอยเชิงเส้นอย่างง่ายโดยใช้อาร์ฉันต้องการบันทึกภาพนั้นเป็น PNG หรือ JPEG เป็นไปได้ไหมที่จะทำโดยอัตโนมัติ? (ผ่านรหัส) มีคำถามที่แตกต่างกันสองข้อข้อแรกฉันดูพล็อตบนหน้าจอของฉันแล้วและฉันต้องการบันทึกตามที่เป็นอยู่ ประการที่สองฉันยังไม่ได้สร้างพล็อต แต่ฉันต้องการบันทึกลงดิสก์โดยตรงเมื่อฉันเรียกใช้รหัสการพล็อตของฉัน
304 r  plot  ggplot2  lattice  r-faq 

11
วิธีวางคอลัมน์ตามชื่อใน data frame
ฉันมีชุดข้อมูลขนาดใหญ่และฉันต้องการอ่านคอลัมน์ที่เฉพาะเจาะจงหรือวางอื่น ๆ ทั้งหมด data <- read.dta("file.dta") ฉันเลือกคอลัมน์ที่ฉันไม่สนใจ: var.out <- names(data)[!names(data) %in% c("iden", "name", "x_serv", "m_serv")] และกว่าที่ฉันต้องการทำบางสิ่งเช่น: for(i in 1:length(var.out)) { paste("data$", var.out[i], sep="") <- NULL } เพื่อวางคอลัมน์ที่ไม่ต้องการทั้งหมด นี่เป็นทางออกที่ดีที่สุดหรือไม่?
304 r  dataframe  subset 

13
สั่งซื้อแท่งกราฟแท่ง ggplot2
ฉันกำลังพยายามสร้างกราฟแท่งที่แถบที่ใหญ่ที่สุดใกล้กับแกน y และแถบที่สั้นที่สุดจะไกลที่สุด นี่คือตารางที่ฉันมี Name Position 1 James Goalkeeper 2 Frank Goalkeeper 3 Jean Defense 4 Steve Defense 5 John Defense 6 Tim Striker ดังนั้นฉันจึงพยายามสร้างกราฟแท่งที่จะแสดงจำนวนผู้เล่นตามตำแหน่ง p <- ggplot(theTable, aes(x = Position)) + geom_bar(binwidth = 1) แต่กราฟจะแสดงแถบผู้รักษาประตูก่อนจากนั้นจะเป็นการป้องกันและในที่สุดก็เป็นกองหน้า ฉันต้องการให้กราฟสั่งให้แถบป้องกันอยู่ใกล้กับแกน y, ผู้รักษาประตูคนหนึ่งและในที่สุดก็เป็นกองหน้า ขอบคุณ
301 r  ggplot2  r-faq 

11
วิธีการเปลี่ยนชื่อตำนานใน ggplot
ฉันมีพล็อตดังต่อไปนี้ มันถูกสร้างขึ้นด้วยคำสั่งนี้: library(ggplot2) df <- data.frame(cond = factor(rep(c("A", "B"), each = 200)), rating = c(rnorm(200), rnorm(200, mean=.8))) ggplot(df, aes(x=rating, fill=cond)) + geom_density(alpha = .3) + xlab("NEW RATING TITLE") + ylab("NEW DENSITY TITLE") ตอนนี้สิ่งต่อไปที่ฉันต้องการจะทำคือการปรับเปลี่ยนชื่อตำนานจากcondเข้าNEW LEGEND TITLE ดังนั้นสิ่งที่ฉันทำคือการเพิ่มบรรทัดต่อไปนี้เพิ่มจุดสิ้นสุดของโค้ดด้านบน: +labs(colour="NEW LEGEND TITLE") แต่มันไม่ทำงาน วิธีที่ถูกต้องในการทำคืออะไร?
299 r  plot  ggplot2 

1
จะปิดการใช้สัญลักษณ์ทางวิทยาศาสตร์ได้อย่างไร
ฉันมีไฟล์ข้อมูลที่มีคอลัมน์ค่า p และฉันต้องการเลือกค่า p เหล่านี้ > pvalues_anova [1] 9.693919e-01 9.781728e-01 9.918415e-01 9.716883e-01 1.667183e-02 [6] 9.952762e-02 5.386854e-01 9.997699e-01 8.714044e-01 7.211856e-01 [11] 9.536330e-01 9.239667e-01 9.645590e-01 9.478572e-01 6.243775e-01 [16] 5.608563e-01 1.371190e-04 9.601970e-01 9.988648e-01 9.698365e-01 [21] 2.795891e-06 1.290176e-01 7.125751e-01 5.193604e-01 4.835312e-04 วิธีการเลือก: anovatest<- results[ - which(results$pvalues_anova < 0.8) ,] ฟังก์ชั่นใช้งานได้ดีจริง ๆ ถ้าฉันใช้ในอาร์ แต่ถ้าฉันเรียกใช้ในแอพพลิเคชั่นอื่น (กาแล็กซี่) …

6
จะตรวจสอบว่า object (ตัวแปร) ถูกกำหนดใน R ได้อย่างไร?
ฉันต้องการตรวจสอบว่ามีการกำหนดตัวแปรบางตัวใน R - โดยไม่ได้รับข้อผิดพลาดหรือไม่ ฉันจะทำสิ่งนี้ได้อย่างไร ความพยายามของฉัน (ไม่สำเร็จ): > is.na(ooxx) Error: object 'ooxx' not found > is.finite(ooxx) Error: object 'ooxx' not found ขอบคุณ!
294 r 

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