ตัวอย่าง () ฟังก์ชันใน R

Tawxyang Fangkchan Ni R



ใน R เราจะได้ค่าตัวอย่างแบบสุ่มจากเวกเตอร์หรือรายการโดยใช้ฟังก์ชัน sample() ช่วยให้เราสามารถสุ่มเลือกชุดย่อยของข้อมูลซึ่งมีประโยชน์ในแอปพลิเคชันทางสถิติมากมาย หากอินพุตเป็นรายการในฟังก์ชัน sample() เอาต์พุตจะเป็นรายการที่มีจำนวนองค์ประกอบเท่ากัน แต่มีองค์ประกอบที่เลือก บทความนี้แสดงตัวอย่าง () ฟังก์ชันของ R ด้วยการนำไปใช้ซึ่งกำหนดอาร์กิวเมนต์ต่างๆ

ตัวอย่างที่ 1: การใช้ฟังก์ชัน Sample() กับอาร์กิวเมนต์ข้อมูล

ต้องระบุฟังก์ชัน sample() ของ R พร้อมข้อมูลตัวอย่างเพื่อสร้างตัวเลขแบบสุ่ม ข้อมูลตัวอย่างเป็นอาร์กิวเมนต์ที่จำเป็นของฟังก์ชันตัวอย่าง () ซึ่งมีรหัสดังต่อไปนี้:

ดาต้าเอ็กซ์ < - ค ( 10 , ยี่สิบ , 30 , 40 , ห้าสิบ , 60 , 70 , 80 , 90 , 100 )

ตัวอย่าง ( ดาต้าเอ็กซ์ , 3 )

ตัวอย่าง ( ดาต้าเอ็กซ์ , 3 )

ในขั้นแรก เราจะสร้างเวกเตอร์ขององค์ประกอบจำนวนเต็มภายในตัวแปร “dataX” ต่อไป เราเรียกฟังก์ชัน sample() สองครั้งในโค้ด และส่งเวกเตอร์ 'dataX' ที่เราสร้างไว้ก่อนหน้านี้เป็นอาร์กิวเมนต์ การใช้ตัวอย่างครั้งแรก (dataX, 3) จะสุ่มตัวอย่างองค์ประกอบสามรายการจากเวกเตอร์ 'dataX' ผลลัพธ์เป็นการสุ่มเปลี่ยนองค์ประกอบสามอย่างจาก “dataX” หลังจากนั้น เราใช้ตัวอย่าง (a, 5) อีกครั้ง ซึ่งนำตัวอย่างสุ่มอิสระอีก 3 องค์ประกอบจากเวกเตอร์ 'dataX' ครั้งนี้ ผลลัพธ์แตกต่างจากครั้งที่แล้วอย่างสิ้นเชิง







ผลลัพธ์แสดงองค์ประกอบต่าง ๆ ในการเรียกใช้ฟังก์ชัน sample() สองครั้ง โปรดทราบว่าทุกครั้งที่เราสร้างตัวอย่างแบบสุ่ม จะได้องค์ประกอบที่แตกต่างจากเวกเตอร์:





ตัวอย่างที่ 2: การใช้ฟังก์ชัน Sample() กับอาร์กิวเมนต์แทนที่

นอกจากนี้ เรายังมีอาร์กิวเมนต์ 'replace' ของฟังก์ชัน sample() ซึ่งรับค่าตรรกะ สามารถเลือกองค์ประกอบที่คล้ายกันได้มากกว่าหนึ่งครั้ง ถ้าองค์ประกอบถูกสุ่มตัวอย่างด้วยตัวเลือกการแทนที่ TRUE อย่างไรก็ตาม หากตั้งค่าเป็น FALSE จะสามารถเลือกได้เพียงหนึ่งรายการสำหรับแต่ละองค์ประกอบ ซึ่งจะทำให้องค์ประกอบถูกสุ่มตัวอย่างโดยไม่มีการแทนที่





Random_numbers = ( สิบเอ็ด , 25 , 12 , 89 , สี่ห้า , 16 , 67 , 38 , 96 , 55 , 73 )

ตัวอย่าง ( Random_numbers , 4 , แทนที่ = จริง )

ตัวอย่าง ( Random_numbers , 5 , แทนที่ = จริง )

ในขั้นแรก เราจะกำหนดเวกเตอร์ด้วยค่าตัวเลขในตัวแปร “random_numbers” หลังจากนั้น เราเรียกใช้ฟังก์ชัน sample() โดยที่ 'random_numbers' ถูกส่งเป็นอาร์กิวเมนต์ ค่าของ '4' ถูกระบุให้กับฟังก์ชัน sample() ซึ่งบ่งชี้ว่าระบบจะเลือกค่าสุ่มเพียงสี่ค่าจากเวกเตอร์ใน 'random_numbers'

ถัดไป ฟังก์ชันแทนที่=จริงในตัวอย่าง() ระบุว่าแต่ละค่าสามารถเลือกได้มากกว่าหนึ่งครั้ง จากนั้น เราใช้ฟังก์ชัน sample() อีกครั้ง ซึ่งคราวนี้เลือกค่าสุ่ม '5' จากเวกเตอร์ ในทำนองเดียวกัน เราตั้งค่าอาร์กิวเมนต์แทนที่ด้วย “TRUE” เช่นเดิมสำหรับตัวเลือกหลายตัวเลือกสำหรับแต่ละค่า



อย่างที่เราเห็น เอาต์พุตแรกแสดงเวกเตอร์ขององค์ประกอบที่เลือกแบบสุ่ม 4 รายการจากเวกเตอร์ “random_numbers” อย่างไรก็ตาม ผลลัพธ์ถัดไปจะแสดงเวกเตอร์ขององค์ประกอบที่เลือกแบบสุ่ม '5':

ตัวอย่างที่ 3: การใช้ฟังก์ชัน Sample() กับอาร์กิวเมนต์ขนาด

อาร์กิวเมนต์ถัดไปที่ฟังก์ชัน sample() ส่งผ่านคือ 'ขนาด' “ขนาด” เป็นพารามิเตอร์ทางเลือกที่ระบุค่าของตัวอย่างที่จะวาด โค้ดของฟังก์ชัน sample() ที่มีพารามิเตอร์ 'size' มีดังต่อไปนี้:

เวกเตอร์ < - 1 : 10

ตัวอย่าง ( เวกเตอร์ , ขนาด = 5 )

ในที่นี้ เวกเตอร์ตัวเลขถูกกำหนดให้เป็นลำดับของจำนวนเต็มตั้งแต่ 1 ถึง 10 ในตัวแปร 'เวกเตอร์' จากนั้นใช้ฟังก์ชัน sample() เพื่อสุ่มเลือกองค์ประกอบจากเวกเตอร์ อย่างที่เราเห็น ฟังก์ชัน sample() รับสองอาร์กิวเมนต์ อาร์กิวเมนต์แรกคือเวกเตอร์ที่เราได้รับตัวอย่างมา อาร์กิวเมนต์ถัดไปคือขนาดที่ระบุด้วยค่า '5' ซึ่งระบุว่ามีเพียงห้าองค์ประกอบให้เลือกจากเวกเตอร์

ดังนั้น องค์ประกอบที่เลือกจะถูกส่งกลับในลำดับสุ่มเป็นเวกเตอร์ใหม่ในผลลัพธ์ต่อไปนี้:

ตัวอย่างที่ 4: การใช้ฟังก์ชัน Sample() สำหรับรายการ R

ยิ่งไปกว่านั้น ฟังก์ชัน sample() สามารถใช้กับรายการใน R ส่วนนี้ของตัวอย่างจะได้รับค่าสุ่มจากรายการ

R_list < - รายการ ( 1 : 4 ,

913 ,

( 'เอ็กซ์' , 'ปปป' , 'ดี' ) ,

'ซซซ' ,

5 )

ผลลัพธ์ < - R_list [ ตัวอย่าง ( 1 :ความยาว ( R_list ) , ขนาด = 4 ) ]

ผลลัพธ์

ที่นี่ รายการของ “R_list” ถูกกำหนดด้วยองค์ประกอบประเภทต่างๆ รวมถึงเวกเตอร์ของตัวเลข ตัวเลขเดี่ยว เวกเตอร์อักขระ สตริง และตัวเลขอื่นๆ หลังจากนั้น เราสร้างตัวแปร 'ผลลัพธ์' โดยเรียกใช้ฟังก์ชัน sample()

ภายในฟังก์ชัน sample() เราตั้งค่านิพจน์ “1:length(R_list)” ซึ่งระบุเวกเตอร์ของดัชนีที่จะสุ่มตัวอย่าง ต่อไป เรามีอาร์กิวเมนต์ 'ขนาด' เพื่อระบุจำนวนองค์ประกอบที่จะสุ่มตัวอย่างซึ่งก็คือ '4' ดังนั้น “R_list” จึงสร้างองค์ประกอบที่เลือกแบบสุ่มสามรายการจากรายการ “R_list” เนื่องจากองค์ประกอบในรายการของ “R_list” มีหลายประเภท องค์ประกอบที่เป็นผลลัพธ์ใน “ผลลัพธ์” จึงสามารถเป็นประเภทต่างๆ กันได้เช่นกัน

เอาต์พุตแสดงถึงรายการใหม่ซึ่งมีชุดย่อยแบบสุ่มของรายการดั้งเดิม:

ตัวอย่างที่ 5: การใช้ฟังก์ชัน Sample() กับ Prob Argument

นอกจากนี้ เรายังมีพารามิเตอร์ “prob” ของฟังก์ชัน sample() อาร์กิวเมนต์ 'prob' ให้ความน่าจะเป็นขององค์ประกอบที่เลือกในเวกเตอร์ โปรดทราบว่าองค์ประกอบทั้งหมดจะถือว่ามีความน่าจะเป็นเท่ากันเมื่อไม่ได้ใช้อาร์กิวเมนต์ 'prob'

my_data = ( 31 , 99 , 5 , 24 , 72 )

ตัวอย่าง ( my_data , ขนาด = 10 , แทนที่ = จริง ,

ปัญหา = ( 0.5 , ตัวแทน ( 0.1 , 4 ) ) )

ในที่นี้ องค์ประกอบของเวกเตอร์ตัวเลขจะเรียกว่า “my_data” ในขั้นตอนถัดไป เราเรียกใช้ฟังก์ชัน sample() โดยที่ “my_data” จะถูกส่งผ่านไปยังองค์ประกอบที่เลือกแบบสุ่ม 10 รายการจากองค์ประกอบนั้น จากนั้นอาร์กิวเมนต์ 'ขนาด' ถูกกำหนดขึ้นซึ่งระบุว่าค่าที่จะเลือกแบบสุ่มควรเป็นขนาด '10' หลังจากนั้น เรากำหนด 'TRUE' ให้กับอาร์กิวเมนต์ 'replace' ซึ่งหมายความว่าแต่ละองค์ประกอบที่เลือกจะถูกแทนที่ในเวกเตอร์ก่อนที่จะเลือกองค์ประกอบถัดไป อาร์กิวเมนต์ที่สามที่กำหนดไว้ในฟังก์ชัน sample() คือ 'prob' ซึ่งกำหนดความน่าจะเป็นของแต่ละองค์ประกอบในเวกเตอร์ 'my_data' ที่จะเลือก ความน่าจะเป็นขององค์ประกอบแรกถูกกำหนดเป็น '0.5' สำหรับองค์ประกอบเวกเตอร์สี่ตัวที่เหลือ ความน่าจะเป็นคือ '0.1'

เอาต์พุตต่อไปนี้ได้รับค่าความน่าจะเป็นสูงสุดขององค์ประกอบแรกในเวกเตอร์ตามที่คาดไว้:

ตัวอย่างที่ 6: การใช้ฟังก์ชัน Sample() เพื่อ Render the Barplot

สุดท้าย ฟังก์ชัน sample() ถูกใช้เพื่อสร้าง barplot ใน R เพื่อแสดงภาพการแจกแจงของตัวแปรหมวดหมู่ที่มีการแจกแจงความน่าจะเป็นที่กำหนด

ตัวอย่าง_ข้อมูล = ( 1 , 2 , 3 )

แผนการณ์ ( โต๊ะ ( ตัวอย่าง ( ตัวอย่าง_ข้อมูล , ขนาด = 500 , แทนที่ = จริง , ปัญหา = ( .30 , .60 , .10 ) ) ) )

ที่นี่ หลังจากกำหนด “sample_data” ด้วยเวกเตอร์ของค่าจำนวนเต็มแล้ว เราสร้าง barplot ด้วยการใช้ฟังก์ชัน sample() ขั้นแรก เราเรียก barplot ซึ่งเรียกใช้ฟังก์ชัน table() เพื่อสร้างตารางความถี่ของตัวอย่างผลลัพธ์ จากนั้น เราระบุฟังก์ชัน sample() ภายในฟังก์ชัน table() ซึ่งสุ่มตัวอย่างขนาด 1,000 จากเวกเตอร์ของจำนวนเต็ม 1 ถึง 3 จากนั้น อาร์กิวเมนต์ 'prob' จะใช้เพื่อระบุความน่าจะเป็นในการเลือกจำนวนเต็มแต่ละตัว .

อย่างที่เราเห็นในตอนนี้ barplot จะแสดงดังต่อไปนี้ด้วยแท่งสามแท่ง แท่งหนึ่งสำหรับแต่ละจำนวนเต็ม และความสูงของแท่งจะสัมพันธ์กับจำนวนเต็มที่เกิดขึ้นในตัวอย่าง:

บทสรุป

เราได้เห็นการทำงานของตัวอย่าง () กับตัวอย่างต่างๆ ฟังก์ชัน sample() ใช้กับอาร์กิวเมนต์ต่าง ๆ ที่ต้องการข้อมูลตัวอย่าง และอาร์กิวเมนต์อื่น ๆ ทั้งหมดเป็นทางเลือกและเรียกใช้ในกรณีเฉพาะ อย่างไรก็ตาม ฟังก์ชัน sample() มีประโยชน์ในการวิเคราะห์ทางสถิติหรือเมื่อทำงานกับชุดข้อมูลขนาดใหญ่