Apa yang terjadi jika variabel penjelas dan respons diurutkan secara independen sebelum regresi?

302

Misalkan kita memiliki kumpulan data dengan poin. Kami ingin melakukan regresi linier, tetapi pertama-tama kami mengurutkan nilai dan nilai secara independen satu sama lain, membentuk kumpulan data . Apakah ada interpretasi yang bermakna dari regresi pada set data baru? Apakah ini punya nama?n X i Y i ( X i , Y j )(Xi,Yi)nXiYi(Xi,Yj)

Saya membayangkan ini adalah pertanyaan konyol, jadi saya minta maaf, saya tidak terlatih secara statistik. Dalam pikiran saya ini benar-benar menghancurkan data kami dan regresi tidak ada artinya. Tetapi manajer saya mengatakan dia mendapat "regresi yang lebih baik sebagian besar waktu" ketika dia melakukan ini (di sini "lebih baik" berarti lebih prediktif). Saya merasa dia menipu dirinya sendiri.

EDIT: Terima kasih atas semua contoh Anda yang baik dan sabar. Saya menunjukkan kepadanya contoh oleh @ RUser4512 dan @gung dan dia tetap setia. Dia menjadi jengkel dan saya menjadi lelah. Saya merasa kecewa. Saya mungkin akan mulai mencari pekerjaan lain segera.

pengguna sewenang-wenang
sumber
120
Tetapi manajer saya mengatakan dia mendapat "regresi yang lebih baik sebagian besar waktu" ketika dia melakukan ini. Ya Tuhan ...
Jake Westfall
56
Jelas tidak ada alasan bagi Anda untuk merasa malu!
Jake Westfall
36
"Sains adalah apa pun yang kita inginkan." - Dr. Leo Spaceman.
Sycorax
52
Gagasan ini harus bersaing dengan yang lain yang saya temui: Jika sampel Anda kecil, massalkan saja dengan beberapa salinan data yang sama.
Nick Cox
47
Anda harus memberi tahu bos Anda bahwa Anda memiliki ide yang lebih baik. Alih-alih menggunakan data aktual, buat sendiri saja karena akan lebih mudah untuk dimodelkan.
dsaxton

Jawaban:

147

Saya tidak yakin apa yang menurut atasan Anda "lebih prediktif". Banyak orang salah percaya bahwa nilai- yang lebih rendah berarti model yang lebih baik / lebih prediktif. Itu belum tentu benar (ini menjadi contohnya). Namun, menyortir kedua variabel secara independen sebelumnya akan menjamin nilai lebih rendah . Di sisi lain, kita dapat menilai akurasi prediksi model dengan membandingkan prediksinya dengan data baru yang dihasilkan oleh proses yang sama. Saya melakukannya di bawah ini dalam contoh sederhana (diberi kode dengan ). pppR

options(digits=3)                       # for cleaner output
set.seed(9149)                          # this makes the example exactly reproducible

B1 = .3
N  = 50                                 # 50 data
x  = rnorm(N, mean=0, sd=1)             # standard normal X
y  = 0 + B1*x + rnorm(N, mean=0, sd=1)  # cor(x, y) = .31
sx = sort(x)                            # sorted independently
sy = sort(y)
cor(x,y)    # [1] 0.309
cor(sx,sy)  # [1] 0.993

model.u = lm(y~x)
model.s = lm(sy~sx)
summary(model.u)$coefficients
#             Estimate Std. Error t value Pr(>|t|)
# (Intercept)    0.021      0.139   0.151    0.881
# x              0.340      0.151   2.251    0.029  # significant
summary(model.s)$coefficients
#             Estimate Std. Error t value Pr(>|t|)
# (Intercept)    0.162     0.0168    9.68 7.37e-13
# sx             1.094     0.0183   59.86 9.31e-47  # wildly significant

u.error = vector(length=N)              # these will hold the output
s.error = vector(length=N)
for(i in 1:N){
  new.x      = rnorm(1, mean=0, sd=1)   # data generated in exactly the same way
  new.y      = 0 + B1*x + rnorm(N, mean=0, sd=1)
  pred.u     = predict(model.u, newdata=data.frame(x=new.x))
  pred.s     = predict(model.s, newdata=data.frame(x=new.x))
  u.error[i] = abs(pred.u-new.y)        # these are the absolute values of
  s.error[i] = abs(pred.s-new.y)        #  the predictive errors
};  rm(i, new.x, new.y, pred.u, pred.s)
u.s = u.error-s.error                   # negative values means the original
                                        # yielded more accurate predictions
mean(u.error)  # [1] 1.1
mean(s.error)  # [1] 1.98
mean(u.s<0)    # [1] 0.68


windows()
  layout(matrix(1:4, nrow=2, byrow=TRUE))
  plot(x, y,   main="Original data")
  abline(model.u, col="blue")
  plot(sx, sy, main="Sorted data")
  abline(model.s, col="red")
  h.u = hist(u.error, breaks=10, plot=FALSE)
  h.s = hist(s.error, breaks=9,  plot=FALSE)
  plot(h.u, xlim=c(0,5), ylim=c(0,11), main="Histogram of prediction errors",
       xlab="Magnitude of prediction error", col=rgb(0,0,1,1/2))
  plot(h.s, col=rgb(1,0,0,1/4), add=TRUE)
  legend("topright", legend=c("original","sorted"), pch=15, 
         col=c(rgb(0,0,1,1/2),rgb(1,0,0,1/4)))
  dotchart(u.s, color=ifelse(u.s<0, "blue", "red"), lcolor="white",
           main="Difference between predictive errors")
  abline(v=0, col="gray")
  legend("topright", legend=c("u better", "s better"), pch=1, col=c("blue","red"))

masukkan deskripsi gambar di sini

Plot kiri atas menunjukkan data asli. Ada beberapa hubungan antara dan (yaitu, korelasinya sekitar .) Plot kanan atas menunjukkan seperti apa data setelah mengurutkan kedua variabel secara independen. Anda dapat dengan mudah melihat bahwa kekuatan korelasinya telah meningkat secara substansial (sekarang sekitar ). Namun, di plot yang lebih rendah, kita melihat bahwa distribusi kesalahan prediksi jauh lebih dekat dengan untuk model yang dilatih pada data asli (tidak disortir). Mean predictive absolute absolute untuk model yang menggunakan data asli adalah , sedangkan mean predictive absolute absolute untuk model yang dilatih pada data yang diurutkan adalahy .31 .99 0 1.1 1.98 y 68 %xy.31.9901.11.98- Hampir dua kali lebih besar. Itu berarti prediksi model data yang diurutkan jauh dari nilai yang benar. Plot di kuadran kanan bawah adalah plot titik. Ini menampilkan perbedaan antara kesalahan prediksi dengan data asli dan dengan data yang diurutkan. Ini memungkinkan Anda membandingkan dua prediksi yang sesuai untuk setiap simulasi pengamatan baru. Titik-titik biru ke kiri adalah saat-saat ketika data asli lebih dekat dengan nilai- baru , dan titik-titik merah ke kanan adalah saat-saat ketika data yang diurutkan menghasilkan prediksi yang lebih baik. Ada prediksi yang lebih akurat dari model yang dilatih tentang data asli dari waktu. y68%


Sejauh mana penyortiran akan menyebabkan masalah ini adalah fungsi dari hubungan linear yang ada di data Anda. Jika korelasi antara dan sudah , penyortiran tidak akan berpengaruh sehingga tidak merugikan. Di sisi lain, jika korelasinya adalahy 1.0 - 1.0xy1.01.0, penyortiran akan sepenuhnya membalikkan hubungan, membuat model seakurat mungkin. Jika data benar-benar tidak berkorelasi pada awalnya, penyortiran akan memiliki efek menengah, tetapi masih cukup besar, yang merusak pada akurasi prediksi model yang dihasilkan. Karena Anda menyebutkan bahwa data Anda biasanya berkorelasi, saya menduga itu telah memberikan perlindungan terhadap bahaya intrinsik pada prosedur ini. Meskipun demikian, memilah terlebih dahulu pasti berbahaya. Untuk mengeksplorasi kemungkinan ini, kita cukup menjalankan kembali kode di atas dengan nilai yang berbeda untuk B1(menggunakan seed yang sama untuk reproduktifitas) dan memeriksa hasilnya:

  1. B1 = -5:

    cor(x,y)                            # [1] -0.978
    summary(model.u)$coefficients[2,4]  # [1]  1.6e-34  # (i.e., the p-value)
    summary(model.s)$coefficients[2,4]  # [1]  1.82e-42
    mean(u.error)                       # [1]  7.27
    mean(s.error)                       # [1] 15.4
    mean(u.s<0)                         # [1]  0.98
  2. B1 = 0:

    cor(x,y)                            # [1] 0.0385
    summary(model.u)$coefficients[2,4]  # [1] 0.791
    summary(model.s)$coefficients[2,4]  # [1] 4.42e-36
    mean(u.error)                       # [1] 0.908
    mean(s.error)                       # [1] 2.12
    mean(u.s<0)                         # [1] 0.82
  3. B1 = 5:

    cor(x,y)                            # [1] 0.979
    summary(model.u)$coefficients[2,4]  # [1] 7.62e-35
    summary(model.s)$coefficients[2,4]  # [1] 3e-49
    mean(u.error)                       # [1] 7.55
    mean(s.error)                       # [1] 6.33
    mean(u.s<0)                         # [1] 0.44
gung
sumber
12
Jawaban Anda membuat poin yang sangat bagus, tetapi mungkin tidak sejelas mungkin dan seharusnya. Itu tidak selalu jelas bagi orang awam (seperti, katakanlah, manajer OP) apa yang semua plot pada akhirnya (apalagi kode R) benar-benar menunjukkan dan menyiratkan. IMO, jawaban Anda benar-benar dapat menggunakan satu atau dua paragraf penjelasan.
Ilmari Karonen
3
Terima kasih atas komentar Anda, @IlmariKaronen. Bisakah Anda menyarankan sesuatu untuk ditambahkan? Saya mencoba membuat kode sejelas mungkin, & berkomentar secara luas. Tetapi saya mungkin tidak lagi dapat melihat hal-hal ini dengan mata seseorang yang tidak terbiasa dengan topik-topik ini. Saya akan menambahkan beberapa teks untuk menggambarkan plot di bagian bawah. Jika Anda dapat memikirkan hal lain, harap beri tahu saya.
gung
13
+1 Ini masih merupakan satu-satunya jawaban yang membahas situasi yang diajukan: ketika dua variabel sudah menunjukkan beberapa asosiasi positif, namun demikian merupakan kesalahan untuk mengembalikan nilai yang diurutkan secara independen. Semua jawaban lain menganggap tidak ada hubungan atau itu sebenarnya negatif. Meskipun mereka adalah contoh yang baik, karena tidak berlaku mereka tidak akan meyakinkan. Namun, yang masih kurang adalah contoh data dunia nyata intuisi tingkat intuisi seperti yang disimulasikan di sini di mana sifat kesalahannya sangat jelas.
whuber
8
+1 karena tidak terpengaruh oleh ortodoksi dan menggunakan "=" untuk penugasan dalam R.
dsaxton
@dsaxton, <-kadang-kadang saya gunakan , tetapi tujuan saya pada CV adalah untuk menulis kode R sedekat mungkin dengan pseudocode sehingga lebih mudah dibaca oleh orang-orang yang tidak terbiasa dengan w / R. =cukup universal di antara bahasa pemrograman sebagai operator penugasan .
gung
103

Jika Anda ingin meyakinkan atasan Anda, Anda dapat menunjukkan apa yang terjadi dengan data yang disimulasikan, acak, independen . Dengan R:x,ymasukkan deskripsi gambar di sini

n <- 1000

y<- runif(n)
x <- runif(n)

linearModel <- lm(y ~ x)


x_sorted <- sort(x)
y_sorted <- sort(y)

linearModel_sorted <- lm(y_sorted ~ x_sorted)

par(mfrow = c(2,1))
plot(x,y, main = "Random data")
abline(linearModel,col = "red")


plot(x_sorted,y_sorted, main = "Random, sorted data")
abline(linearModel_sorted,col = "red")

Jelas, hasil yang diurutkan menawarkan regresi yang jauh lebih baik. Namun, mengingat proses yang digunakan untuk menghasilkan data (dua sampel independen) sama sekali tidak ada peluang bahwa satu dapat digunakan untuk memprediksi yang lain.

RUser4512
sumber
8
Ini hampir seperti semua iklan Internet "sebelum vs sesudah" :)
Tim
Ini adalah contoh yang baik, tetapi tidak berpikir itu akan meyakinkannya karena data kami memiliki korelasi positif sebelum disortir. Menyortir hanya "memperkuat" hubungan (meskipun salah).
pengguna sewenang
17
@arbitraryuser: Ya, data yang diurutkan akan selalu menunjukkan korelasi positif (baik, tidak negatif), tidak peduli apa, jika ada, korelasi yang dimiliki data asli. Jika Anda tahu bahwa data asli selalu memiliki korelasi positif, maka "benar secara tidak sengaja" - tetapi kemudian, mengapa repot-repot memeriksa korelasi, jika Anda sudah tahu itu ada dan positif? Tes yang dijalankan manajer Anda sedikit mirip dengan "detektor kualitas udara" yang selalu mengatakan "udara yang dapat dideteksi terdeteksi" - itu berfungsi dengan baik, selama Anda tidak pernah membawanya ke suatu tempat di mana tidak ada udara yang bisa bernapas.
Ilmari Karonen
2
@arbitraryuser Contoh lain yang mungkin Anda temukan lebih meyakinkan adalah dengan mengambil x = 0: 50, dan y = 0: -50, garis sempurna dengan kemiringan -1. Jika Anda menyortirnya, hubungan berubah menjadi garis sempurna dengan kemiringan 1. Jika kebenarannya adalah bahwa variabel Anda bervariasi dalam oposisi sempurna, dan Anda membuat resep kebijakan berdasarkan persepsi keliru Anda bahwa mereka berbeda-beda dalam perjanjian sempurna, Anda akan menjadi melakukan hal yang salah.
John Rauser
99

Intuisi Anda benar: data yang diurutkan secara independen tidak memiliki makna yang dapat diandalkan karena input dan output dipetakan secara acak satu sama lain daripada apa hubungan yang diamati.

Ada kemungkinan (baik) bahwa regresi pada data yang disortir akan terlihat bagus, tetapi tidak ada artinya dalam konteks.

Contoh intuitif: Misalkan kumpulan data untuk beberapa populasi. Grafik dari data yang tidak tercemar mungkin akan terlihat lebih seperti fungsi logaritmik atau daya: laju pertumbuhan lebih cepat untuk anak-anak yang melambat untuk remaja kemudian dan "secara asimptotik" mendekati tinggi maksimum seseorang untuk dewasa muda dan yang lebih tua.(X=age,Y=height)

Jika kita mengurutkan dalam urutan menaik, grafik mungkin akan hampir linier. Dengan demikian, fungsi prediksi adalah bahwa orang tumbuh lebih tinggi untuk seluruh hidup mereka. Saya tidak akan bertaruh uang pada algoritma prediksi itu. x,y

d0rmLife
sumber
25
+1 - tapi saya akan menjatuhkan "dasarnya" dan menekankan kembali "tidak ada artinya."
whuber
12
Perhatikan bahwa OP mengacu pada penyortiran data secara independen sebagai lawan pengocokan . Ini adalah perbedaan yang halus tetapi penting karena berkaitan dengan apa yang "melihat" hubungan yang diamati seseorang setelah menerapkan operasi yang diberikan.
kardinal
3
Saya bingung dengan contoh yang Anda tambahkan. Jika adalah usia dan adalah tinggi, maka kedua variabel sudah dipesan: usia atau tinggi tidak ada yang pernah menurun. Jadi memilah tidak akan memiliki efek sama sekali. Cc ke @JakeWestfall, yang berkomentar bahwa dia menyukai contoh ini. Bisakah Anda jelaskan? yxy
amoeba
12
@amoeba Kumpulan data sepele: rata-rata remaja, pusat NBA usia 30-an, wanita rata-rata lanjut usia. Setelah memilah algoritma prediksi adalah yang tertua adalah yang tertinggi.
d0rmLife
1
@amoeba Saya melihat bagaimana itu bisa ditafsirkan seperti itu, saya akan mengklarifikasi.
d0rmLife
40

Viti

(ti,Vi)

(0,1.0),(1,0.9),(2,0.8),(3,0.7),(4,0.6),(5,0.5).
(0,0.5),(1,0.6),(2,0.7),(3,0.8),(4,0.9),(5,1.0).
Dan kesimpulan dari kumpulan data yang diurutkan ini adalah bahwa seiring waktu meningkat, volume air meningkat, dan terlebih lagi, bahwa mulai dari 1 liter air, Anda akan mendapatkan setelah 5 jam menunggu, lebih dari 1 liter air. Bukankah itu luar biasa? Tidak hanya kesimpulan yang bertentangan dengan apa yang dikatakan oleh data asli, itu juga menunjukkan bahwa kami telah menemukan fisika baru!
heropup
sumber
5
Contoh intuitif yang bagus! Kecuali untuk baris terakhir. Dengan data asli kita akan mendapatkan volume negatif dari waktu ke waktu, yang juga merupakan fisika baru. Anda tidak akan pernah bisa memperkirakan regresi.
Jongsma
22

Ini adalah seni nyata dan membutuhkan pemahaman psikologi yang nyata untuk dapat meyakinkan beberapa orang tentang kesalahan cara mereka. Selain semua contoh luar biasa di atas, strategi yang bermanfaat kadang-kadang menunjukkan bahwa kepercayaan seseorang mengarah pada ketidakkonsistenan dengan dirinya sendiri. Atau coba pendekatan ini. Cari tahu sesuatu yang sangat dipercaya atasan Anda seperti bagaimana orang melakukan tugas Y tidak ada hubungannya dengan seberapa banyak atribut X yang mereka miliki. Tunjukkan bagaimana pendekatan bos Anda sendiri akan menghasilkan kesimpulan dari hubungan yang kuat antara X dan Y. Memanfaatkan kepercayaan politik / ras / agama.

Ketidakabsahan wajah seharusnya sudah cukup. Bos yang keras kepala. Sedang mencari pekerjaan yang lebih baik untuk saat ini. Semoga berhasil.

Frank Harrell
sumber
12

Satu lagi contoh. Bayangkan Anda memiliki dua variabel, satu berhubungan dengan makan cokelat dan yang kedua terhubung dengan kesejahteraan secara keseluruhan. Anda memiliki sampel dua dan data Anda terlihat di bawah:

chocolateno happinessno chocolatehappiness

Apa hubungan cokelat dan kebahagiaan berdasarkan sampel Anda? Dan sekarang, ubah urutan salah satu kolom - apa hubungan setelah operasi ini?

tNt

iXiY

Perhatikan bahwa kadang-kadang kami benar-benar tertarik untuk mengubah urutan kasus, kami melakukannya dalam metode resampling . Sebagai contoh, kita dapat secara acak mengocok pengamatan beberapa kali sehingga untuk mempelajari sesuatu tentang distribusi nol data kita (bagaimana data kita terlihat seperti jika tidak ada hubungan berpasangan), dan selanjutnya kita dapat membandingkan jika data nyata kita bagaimanapun lebih baik daripada secara acak dikocok. Apa yang manajer Anda lakukan justru sebaliknya - ia dengan sengaja memaksa pengamatan untuk memiliki struktur buatan di mana tidak ada struktur, yang mengarah pada korelasi palsu.

Tim
sumber
8

Contoh sederhana yang mungkin dimengerti manajer Anda:

Katakanlah Anda memiliki Coin Y dan Coin X, dan Anda membalik masing-masing 100 kali. Maka Anda ingin memprediksi apakah mendapatkan kepala dengan Coin X (IV) dapat meningkatkan peluang mendapatkan kepala dengan Coin Y (DV).

Tanpa penyortiran, hubungan tidak akan ada, karena hasil Coin X seharusnya tidak mempengaruhi hasil Coin Y. Dengan menyortir, hubungan akan hampir sempurna.

Bagaimana masuk akal untuk menyimpulkan bahwa Anda memiliki peluang bagus untuk mendapatkan kepala di flip koin jika Anda baru saja membalik kepala dengan koin yang berbeda?

Hotaka
sumber
1
Membutuhkan terjemahan untuk mata uang apa pun kecuali yang Anda asumsikan. (Saya tahu itu keberatan yang sangat sepele, dan mudah untuk memperbaiki masalah apa pun, tetapi kadang-kadang ada baiknya menekankan bahwa ini adalah forum internasional.)
Nick Cox
8

Teknik ini sebenarnya luar biasa. Saya menemukan segala macam hubungan yang tidak pernah saya curigai. Sebagai contoh, saya tidak akan curiga bahwa angka-angka yang muncul dalam lotre Powerball, yang DITANGGUHKAN adalah acak, sebenarnya sangat berkorelasi dengan harga pembukaan saham Apple pada hari yang sama! Teman-teman, saya pikir kita akan mendapat banyak uang. :)

> powerball_last_number = scan()
1: 69 66 64 53 65 68 63 64 57 69 40 68
13: 
Read 12 items
> #Nov. 18, 14, 11, 7, 4
> #Oct. 31, 28, 24, 21, 17, 14, 10
> #These are powerball dates.  Stock opening prices 
> #are on same or preceding day.
> 
> appl_stock_open = scan()
1: 115.76  115.20 116.26  121.11  123.13 
6: 120.99  116.93  116.70  114.00  111.78
11: 111.29  110.00
13: 
Read 12 items
> hold = lm(appl_stock_open ~ powerball_last_number)
> summary(hold)


Coefficients:
                       Estimate Std. Error t value Pr(>|t|)    
(Intercept)           112.08555    9.45628  11.853 3.28e-07 ***
powerball_last_number   0.06451    0.15083   0.428    0.678    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 4.249 on 10 degrees of freedom
Multiple R-squared:  0.01796,   Adjusted R-squared:  -0.08024 
F-statistic: 0.1829 on 1 and 10 DF,  p-value: 0.6779

Hmm, sepertinya tidak memiliki hubungan yang signifikan. TAPI menggunakan teknik baru yang ditingkatkan:

> 
> vastly_improved_regression = lm(sort(appl_stock_open)~sort(powerball_last_number))
> summary(vastly_improved_regression)

Coefficients:
                            Estimate Std. Error t value Pr(>|t|)    
(Intercept)                 91.34418    5.36136  17.038 1.02e-08 ***
sort(powerball_last_number)  0.39815    0.08551   4.656    9e-04 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.409 on 10 degrees of freedom
Multiple R-squared:  0.6843,    Adjusted R-squared:  0.6528 
F-statistic: 21.68 on 1 and 10 DF,  p-value: 0.0008998

CATATAN: Ini tidak dimaksudkan untuk menjadi analisis yang serius. Cukup tunjukkan kepada manajer Anda bahwa mereka dapat membuat SETIAP dua variabel terkait secara signifikan jika Anda menyortir keduanya.

AlaskaRon
sumber
6

Banyak contoh bagus di sini. Izinkan saya menambahkan paragraf tentang inti masalahnya.

XiYiXYiiX1Y1X2Y2XYX1Y1X1Y1

Sebenarnya, izinkan saya menambahkan paragraf tentang mengapa ini "bekerja" juga.

XaXbXaXYaXzXYzYXaYaXzYzX1Y1

pengguna2640528
sumber
6

Sebenarnya, tes yang dijelaskan (yaitu mengurutkan nilai-nilai X dan nilai-nilai Y secara independen dan mundur satu terhadap yang lain) TIDAK menguji sesuatu, dengan asumsi bahwa (X, Y) disampel sebagai pasangan independen dari distribusi bivariat. Ini bukan ujian dari apa yang ingin diuji oleh manajer Anda. Ini pada dasarnya memeriksa linearitas plot QQ, membandingkan distribusi marginal Xs dengan distribusi marginal Ys. Khususnya, 'data' akan mendekati garis lurus jika kerapatan Xs (f (x)) terkait dengan kerapatan Ys (g (y)) dengan cara ini:

f(x)=g((ya)/b)ab>0

AlaskaRon
sumber
4

Aneh bahwa sampel tandingan yang paling jelas masih belum ada di antara jawaban dalam bentuk yang paling sederhana.

Y=X

Y^X

Ini adalah semacam "kebalikan langsung" dari pola yang mungkin Anda temukan di sini.

KT.
sumber
Bisakah Anda menjelaskan dengan tegas apa pernyataan balasan ini?
whuber
Pernyataan dari manajer bahwa Anda bisa "mendapatkan regresi yang lebih baik setiap saat" dengan menyortir input dan output secara mandiri.
KT.
R2=1
R2
1
R2Y=X
3

Kamu benar. Manajer Anda akan menemukan hasil "baik"! Tetapi mereka tidak ada artinya. Apa yang Anda dapatkan ketika Anda menyortirnya secara independen adalah keduanya meningkat atau menurun dengan cara yang sama dan ini memberikan kemiripan model yang bagus. Tetapi kedua variabel telah dilucuti dari hubungan mereka yang sebenarnya dan model itu salah.

AlxRd
sumber
3

xx2xx2x

Regresi linier biasanya kurang masuk akal (ada pengecualian, lihat jawaban lain); tetapi geometri ekor dan distribusi kesalahan memberi tahu Anda seberapa jauh dari distribusi yang serupa.

Mikael Vejdemo-Johansson
sumber
2

Saya memiliki intuisi sederhana mengapa ini sebenarnya ide yang baik jika fungsinya monoton :

x1,x2,,xnxi<xi+1f:yi=f(xi)+εiεi

εi=f(xi+δ)f(xi)
δ{Δ,Δ+1,Δ1,Δ}ΔNΔ=0Δ=n

f

εi

PS: Saya merasa luar biasa bagaimana pertanyaan yang tampaknya sederhana dapat mengarah pada cara-cara baru yang menarik untuk memikirkan kembali model standar. Tolong, terima kasih, bos!

Guillaume
sumber
1
xi+δi+δ<1i+δ>n
2

Katakanlah Anda memiliki titik-titik ini pada lingkaran jari-jari 5. Anda menghitung korelasinya:

import pandas as pd
s1 = [(-5, 0), (-4, -3), (-4, 3), (-3, -4), (-3, 4), (0, 5), (0, -5), (3, -4), (3, 4), (4, -3), (4, 3), (5, 0)]
df1 = pd.DataFrame(s1, columns=["x", "y"])
print(df1.corr())

   x  y
x  1  0
y  0  1

Kemudian Anda mengurutkan nilai x dan y dan melakukan korelasi lagi:

s2 = [(-5, -5), (-4, -4), (-4, -4), (-3, -3), (-3, -3), (0, 0), (0, 0), (3, 3), (3, 3), (4, 4), (4, 4), (5, 5)]
df2 = pd.DataFrame(s2, columns=["x", "y"])
print(df2.corr())

   x  y
x  1  1
y  1  1

Dengan manipulasi ini, Anda mengubah kumpulan data dengan korelasi 0,0 menjadi satu dengan korelasi 1,0. Itu masalah.

hughdbrown
sumber
1

Biarkan saya bermain Advokat Iblis di sini. Saya pikir banyak jawaban telah membuat kasus meyakinkan bahwa prosedur bos pada dasarnya salah. Pada saat yang sama, saya menawarkan contoh tandingan yang menggambarkan bahwa bos mungkin benar-benar melihat hasil meningkat dengan transformasi yang keliru ini.

Saya pikir mengakui bahwa prosedur ini mungkin "berhasil" bagi bos dapat memulai argumen yang lebih persuasif: Tentu, itu berhasil, tetapi hanya dalam keadaan beruntung yang biasanya tidak berlaku. Kemudian kita dapat menunjukkan - seperti dalam jawaban yang diterima dengan sangat baik - betapa buruknya hal itu ketika kita tidak beruntung. Yang sebagian besar waktu. Dalam isolasi, menunjukkan bos seberapa buruk dapat menjadi mungkin tidak membujuknya karena ia mungkin telah melihat kasus di mana ia tidak meningkatkan hal-hal, dan angka itu argumen kami yang mewah harus memiliki cacat di suatu tempat.

Saya menemukan data ini online, dan tentu saja, tampak bahwa regresi ditingkatkan oleh pemilahan independen X dan Y karena: a) data berkorelasi sangat positif, dan b) OLS benar-benar tidak bekerja dengan baik dengan ekstrim (tinggi -minyak) pencilan. Tinggi dan berat badan memiliki korelasi 0,19 dengan outlier yang disertakan, 0,77 dengan outlier yang dikecualikan, dan 0,78 dengan X dan Y yang disortir secara independen.

x <- read.csv ("https://vincentarelbundock.github.io/Rdatasets/csv/car/Davis.csv", header=TRUE)

plot (weight ~ height, data=x)

lm1 <- lm (weight ~ height, data=x)

xx <- x
xx$weight <- sort (xx$weight)
xx$height <- sort (xx$height)

plot (weight ~ height, data=xx)

lm2 <- lm (weight ~ height, data=xx)

plot (weight ~ height, data=x)
abline (lm1)
abline (lm2, col="red")

masukkan deskripsi gambar di sini

plot (x$height, x$weight)
points (xx$height, xx$weight, col="red")

masukkan deskripsi gambar di sini

Jadi tampak bagi saya bahwa model regresi pada dataset ini ditingkatkan oleh pengurutan independen (garis hitam versus merah pada grafik pertama), dan ada hubungan yang terlihat (hitam versus merah pada grafik kedua), karena dataset tertentu menjadi sangat (positif) berkorelasi dan memiliki jenis outlier yang tepat yang lebih membahayakan regresi daripada pengocokan yang terjadi ketika Anda secara mandiri mengurutkan x dan y.

Sekali lagi, tidak mengatakan penyortiran mandiri tidak melakukan sesuatu yang masuk akal secara umum, juga bukan jawaban yang benar di sini. Hanya saja bosnya mungkin telah melihat sesuatu seperti ini yang terjadi pada situasi yang tepat.

Wayne
sumber
1
Sepertinya kebetulan murni bahwa Anda sampai pada koefisien korelasi yang sama. Contoh ini tampaknya tidak menunjukkan apa pun tentang hubungan antara data asli dan yang diurutkan secara independen.
Whuber
2
@whuber: Bagaimana dengan grafik kedua? Rasanya bagi saya bahwa jika data asli sangat berkorelasi, menyortirnya mungkin hanya mengocok nilai sedikit, pada dasarnya menjaga hubungan asli +/-. Dengan beberapa outlier, semuanya bisa diatur ulang, tapi ... Maaf aku tidak punya matematika untuk pergi lebih jauh dari itu.
Wayne
1
Saya pikir intuisi yang Anda ungkapkan benar, Wayne. Logika pertanyaan - seperti yang saya tafsirkan - menyangkut apa yang dapat Anda katakan tentang data asli berdasarkan sebar variabel yang disortir saja. Jawabannya adalah, sama sekali tidak melebihi apa yang dapat Anda simpulkan dari distribusi mereka yang terpisah (univariat). Intinya adalah bahwa titik-titik merah di grafik kedua Anda konsisten tidak hanya dengan data yang Anda menunjukkan, tetapi juga dengan semua jumlah astronomis besar lainnya permutasi dari data tersebut - dan Anda tidak memiliki cara untuk mengetahui mana yang permutasi adalah yang benar.
Whuber
2
@whuber Saya pikir perbedaan utama di sini adalah bahwa OP mengatakan itu harus "menghancurkan" data. Jawaban Anda yang diterima menunjukkan secara rinci bagaimana hal ini terjadi, secara umum. Anda tidak dapat menyerahkan data yang diperlakukan dengan cara ini dan tahu jika hasilnya masuk akal. TETAPI, itu juga benar bahwa manajer sebelumnya bisa berurusan dengan contoh-contoh seperti (contoh) saya dan menemukan bahwa transformasi yang salah arah ini benar-benar meningkatkan hasil. Jadi kita bisa sepakat bahwa manajer itu pada dasarnya salah, tetapi mungkin juga sudah cukup beruntung - dan dalam kasus beruntung, itu berhasil.
Wayne
@whuber: Saya telah mengedit pengantar untuk jawaban saya dengan cara yang menurut saya relevan dengan diskusi. Saya pikir mengakui bagaimana prosedur bos mungkin bekerja baginya bisa menjadi langkah pertama dalam argumen yang lebih persuasif yang sesuai dengan pengalaman bos. Sebagai bahan pertimbangan.
Wayne
-7

Jika dia telah memilih variabel menjadi monoton, itu sebenarnya cukup kuat. Google "model linier yang tidak tepat" dan "Robin Dawes" atau "Howard Wainer." Dawes dan Wainer berbicara tentang cara-cara alternatif dalam memilih koefisien. John Cook memiliki kolom pendek ( http://www.johndcook.com/blog/2013/03/05/robustness-of-equal-weights/ ) di atasnya.

Bill Raynor
sumber
4
Apa yang dibahas Cook dalam posting blog itu tidak sama dengan menyortir x dan y secara independen satu sama lain dan kemudian menyesuaikan model regresi dengan variabel yang diurutkan.
gung
4
Apa yang dilakukan bos OP bukanlah "memprediksi [apa] yat oleh FInverse (G (x)), di mana F dan G adalah ecdfs dari Y dan X". Anda dapat melihat prosedur dalam kode di jawaban saya.
gung
4
Bisakah Anda 1. menambahkan referensi ke kertas tertentu oleh Dawes dan / atau Wainer, 2. mengklarifikasi bagaimana hubungannya dengan prosedur penyortiran bos? Atau apakah intinya hanya jika nilai koefisien tidak terlalu penting asalkan tandanya benar dan tandanya benar dengan asumsi, maka tidak masalah bahwa prosedur bos memberikan nilai aneh untuk koefisien?
Juho Kokkala
2
1. Referensi: - Dawes, RM "Keindahan yang kuat dari model linier yang tidak tepat dalam pengambilan keputusan." Amer. Psikol. 34, tidak. 7 (1979): 571. - Wainer, H. "Memperkirakan koefisien dalam model linier: Itu tidak membuat tidak pernah lupakan." Psikis Banteng. 83, tidak. 2 (1976): 213. - Dawes, RM, & Corrigan, B. "Model Linear dalam Pengambilan Keputusan." Psikis Bull., 81 95-106 (1974) 2. Baik Dawes dan Wainer menunjukkan bahwa dengan, data nyata dan masalah prediksi nyata, memprediksi Y masa depan dari X dengan penyimpangan dari kemampuan mereka atau dengan mencocokkan peringkat bekerja dengan cukup baik, dan bahwa ini agak tidak sensitif terhadap lereng.
Bill Raynor
2
Referensi & penjelasan ini akan lebih baik dalam jawaban Anda daripada terkubur dalam komentar.
Scortchi
-8

Saya memikirkannya, dan berpikir ada beberapa struktur di sini berdasarkan statistik pesanan. Saya memeriksa, dan tampaknya manajer tidak mur seperti kedengarannya

Orde Statistik Koefisien Korelasi sebagai Pengukuran Asosiasi Novel Dengan Aplikasi untuk Analisis Biosignal

http://www.researchgate.net/profile/Weichao_Xu/publication/3320558_Order_Statistics_Correlation_Coefficient_as_a_Novel_Association_Measurement_With_Applications_to_Biosignal_Analysis/links/0912f507ed6f003p6003p600

Kami mengusulkan koefisien korelasi baru berdasarkan statistik urutan dan penataan ulang ketimpangan. Koefisien yang diusulkan merupakan kompromi antara koefisien linier Pearson dan dua koefisien berbasis peringkat, yaitu Spearman rho dan Kendall's tau. Derivasi teoretis menunjukkan bahwa koefisien kami memiliki sifat dasar yang sama dengan tiga koefisien klasik. Studi eksperimental berdasarkan empat model dan enam biosignal menunjukkan bahwa koefisien kami berkinerja lebih baik daripada dua koefisien berbasis pangkat ketika mengukur asosiasi linier; sedangkan itu juga mampu mendeteksi asosiasi nonlinier monoton seperti dua koefisien berbasis peringkat. Analisis statistik ekstensif juga menunjukkan bahwa koefisien baru kami memiliki ketahanan anti noise yang unggul, bias kecil,

Daniel
sumber
14
Ini bukan apa yang digambarkan oleh pertanyaan itu. Ketika data diganti oleh statistik pesanan, pasangan data masih terhubung seperti biasa. Pertanyaan itu menjelaskan operasi yang menghancurkan koneksi-koneksi itu, melenyapkan semua informasi tentang distribusi bersama mereka.
whuber
Belum tentu. Kemungkinan untuk membangun (atau terjadi pada) set data di mana penyortiran independen tidak menghancurkan semua informasi tentang probabilitas gabungan.
Daniel
5
Tolong beri kami contoh eksplisit dari klaim Anda, karena sulit untuk melihat bagaimana hal seperti itu bahkan mungkin secara matematis, sangat mungkin dalam praktiknya.
whuber
@whuber: Silakan lihat jawaban baru saya, yang memiliki dataset real-wold yang memuaskan pertanyaan Anda ... Saya pikir.
Wayne