ฉันต้องการแทนค่าที่หายไปด้วยค่าเฉลี่ยของเพื่อนบ้านที่ใกล้ที่สุด แต่เมื่อฉันลองใช้ kNN มันแสดงข้อความแสดงข้อผิดพลาด
ดังนั้นเวกเตอร์คือราคาหุ้น หมายความว่าฉันมี NA ในช่วงสุดสัปดาห์ ฉันต้องการแทนที่ค่า NA (วันเสาร์ วันอาทิตย์) ด้วยฟังก์ชันเว้า: (ค่าวันศุกร์ + ค่าวันจันทร์)/2 ฉันคิดว่าฟังก์ชัน kNN ที่มี k=2 จะเหมาะสม แต่ฉันได้รับข้อความแสดงข้อผิดพลาด
> Oriental_Stock$Stock
[1] 42.80 43.05 43.00 43.00 42.20 NA NA 42.50 40.00 40.25 40.55
41.50 NA NA 40.85
> kNN(Oriental_Stock, variable = colnames("Stock"), k = 2)
Error in `[.data.table`(data, indexNA2s[, variable[i]], `:=`(imp_vars[i],
: i is invalid type (matrix). Perhaps in future a 2 column matrix could
return a list of elements of DT (in the spirit of A[B] in FAQ 2.14).
Please report to data.table issue tracker if you'd like this, or add
your comments to FR #657.
โปรดแจ้งให้เราทราบว่าเป็นไปได้หรือไม่และอาจมีตัวเลือกที่ง่ายกว่า kNN ฉันไม่ใช่ Data Scientist แค่เป็นนักเรียน ดังนั้นฉันจึงไม่ค่อยรู้เรื่องนี้มากนัก ขอบคุณล่วงหน้าสำหรับข้อเสนอแนะใด ๆ !