สำหรับสิ่งที่คุ้มค่า:
ทั้งสองrpart
และctree
ดำเนินการแยก univariateของตัวแปรตามขึ้นอยู่กับค่าในชุดของตัวแปร rpart
และอัลกอริทึมที่เกี่ยวข้องมักใช้มาตรการข้อมูล (เช่นค่าสัมประสิทธิ์ Gini ) สำหรับการเลือกค่าความแปรปรวนร่วมในปัจจุบัน
ctree
ตามผู้เขียน (ดูความคิดเห็นของ chl ) หลีกเลี่ยงอคติการเลือกตัวแปรต่อไปนี้ของrpart
(และวิธีการที่เกี่ยวข้อง): พวกเขามักจะเลือกตัวแปรที่มีการแยกที่เป็นไปได้จำนวนมากหรือค่าที่หายไปจำนวนมาก ซึ่งแตกต่างจากคนอื่น ๆ ที่ctree
ใช้ขั้นตอนการทดสอบอย่างมีนัยสำคัญในการสั่งซื้อเพื่อเลือกตัวแปรแทนที่จะเลือกตัวแปรที่เพิ่มมาตรการข้อมูล (เช่นค่าสัมประสิทธิ์จินี)
การทดสอบความสำคัญหรือดีกว่า: การทดสอบความสำคัญหลายอย่างที่คำนวณในแต่ละจุดเริ่มต้นของอัลกอริทึม (เลือก covariate - เลือก split - recurse) เป็นการทดสอบการเรียงสับเปลี่ยนนั่นคือ "การกระจายตัวของสถิติการทดสอบภายใต้สมมติฐานว่างจะได้จากการคำนวณ ค่าที่เป็นไปได้ทั้งหมดของสถิติการทดสอบภายใต้การจัดเรียงใหม่ของฉลากบนจุดข้อมูลที่สังเกตได้ " (จากบทความวิกิพีเดีย)
ตอนนี้สำหรับสถิติการทดสอบ: มันคำนวณจากการแปลงรูป (รวมถึงตัวตนนั่นคือไม่มีการแปลง) ของตัวแปรตามและ covariates คุณสามารถเลือกการแปลงจำนวนเท่าใดก็ได้สำหรับทั้งสองตัวแปร สำหรับ DV (Dependent Variable) การแปลงจะเรียกว่าฟังก์ชันอิทธิพลที่คุณถาม
ตัวอย่าง (นำมาจากกระดาษ ):
- หากทั้ง DV และ covariates เป็นตัวเลขคุณอาจเลือกการแปลงข้อมูลเฉพาะตัวและคำนวณความสัมพันธ์ระหว่าง covariate และการเปลี่ยนลำดับค่าที่เป็นไปได้ทั้งหมดของค่าของ DV จากนั้นคุณคำนวณค่าp -valueจากการทดสอบการเปลี่ยนแปลงนี้และเปรียบเทียบกับp- value สำหรับ covariates อื่น ๆ
- ถ้าทั้ง DV และ covariates นั้นมีการระบุไว้ (unordered เด็ดขาด) สถิติการทดสอบจะถูกคำนวณจากตารางฉุกเฉิน
- คุณสามารถสร้างสถิติการทดสอบประเภทอื่น ๆ ได้อย่างง่ายดายจากการแปลงรูปแบบใด ๆ (รวมถึงการแปลงตัวตน) จากรูปแบบทั่วไปนี้
ตัวอย่างเล็ก ๆ สำหรับการทดสอบการเปลี่ยนรูปในR
:
require(gtools)
dv <- c(1,3,4,5,5); covariate <- c(2,2,5,4,5)
# all possible permutations of dv, length(120):
perms <- permutations(5,5,dv,set=FALSE)
# now calculate correlations for all perms with covariate:
cors <- apply(perms, 1, function(perms_row) cor(perms_row,covariate))
cors <- cors[order(cors)]
# now p-value: compare cor(dv,covariate) with the
# sorted vector of all permutation correlations
length(cors[cors>=cor(dv,covariate)])/length(cors)
# result: [1] 0.1, i.e. a p-value of .1
# note that this is a one-sided test
ตอนนี้สมมติว่าคุณมีชุดของโควาเรียต จากนั้นคำนวณค่าp- value สำหรับ covariates แต่ละตัวในรูปแบบข้างต้นและเลือกค่าที่มีค่าp-valueน้อยที่สุด คุณต้องการคำนวณค่าp- value แทนค่าสหสัมพันธ์โดยตรงเนื่องจากคุณอาจมีค่าแปรปรวนร่วมชนิดต่าง ๆ (เช่นตัวเลขและหมวดหมู่)
เมื่อคุณเลือก covariate แล้วให้สำรวจการแยกที่เป็นไปได้ทั้งหมด (หรือบ่อยครั้งที่มีการ จำกัด จำนวนของการแยกที่เป็นไปได้ทั้งหมดเช่นโดยกำหนดให้มีองค์ประกอบจำนวนน้อยที่สุดของ DV ก่อนที่จะแยกออก) อีกครั้ง
ctree
มาพร้อมกับการแปลงจำนวนมากที่เป็นไปได้สำหรับทั้ง DV และ covariates (ดูวิธีใช้Transformations
ในparty
แพ็คเกจ)
ดังนั้นโดยทั่วไปแตกต่างที่สำคัญน่าจะเป็นที่ctree
จะใช้รูปแบบการเลือกตัวแปรร่วมที่เป็นไปตามทฤษฎีทางสถิติ (การเลือกโดยการทดสอบอย่างมีนัยสำคัญการเปลี่ยนแปลงตาม IE) และจึงหลีกเลี่ยงอคติที่มีศักยภาพในrpart
มิฉะนั้นพวกเขาดูเหมือนจะคล้ายกัน เช่นต้นไม้อนุมานตามเงื่อนไขสามารถใช้เป็นผู้เรียนพื้นฐานสำหรับป่าสุ่ม
นี่คือเท่าที่ฉันจะได้รับ สำหรับข้อมูลเพิ่มเติมคุณต้องอ่านเอกสารจริงๆ โปรดทราบว่าฉันขอแนะนำให้คุณรู้ว่าคุณกำลังทำอะไรอยู่เมื่อคุณต้องการนำการวิเคราะห์ทางสถิติมาใช้