indexing - R return the index of the minimum column for each row -
i have data.frame contains 4 columns (given below). want find index of minimum column (not value) each row. idea hiw achieve that?
> d v1 v2 v3 v4 1 0.388116155 0.98999967 0.41548536 0.76093748 2 0.495971331 0.47173142 0.51582728 0.06789924 3 0.436495321 0.48699268 0.21187838 0.54139290 4 0.313514389 0.50265539 0.08054103 0.46019601 5 0.277275961 0.39055360 0.29594162 0.70622532 6 0.264804739 0.86996266 0.85708635 0.61136741 7 0.627344463 0.54277873 0.96769568 0.80399490 8 0.814420492 0.35362949 0.39023446 0.39246250 9 0.517459983 0.65895805 0.93662382 0.06762166 10 0.498319937 0.67081260 0.43225997 0.42139151 11 0.046862110 0.97304915 0.06542971 0.09779383 12 0.619009734 0.82363618 0.14514799 0.52858058 13 0.007262782 0.82203403 0.08573499 0.61094206 14 0.001602586 0.33241230 0.57762669 0.45285004 15 0.698388370 0.83541257 0.21051568 0.84431347 16 0.296088411 0.34363164 0.02179999 0.70551493 17 0.897869571 0.50625928 0.92861583 0.61249019 18 0.372497428 0.29025182 0.23201891 0.55737699 19 0.172931860 0.03604668 0.50291560 0.10850847 20 0.988827604 0.15800337 0.87999839 0.09899663
so want following output:
1 1 2 4 3 3 4 3
which continues rows. thanks
your english description suggests want:
apply( df, 1, which.min)
but answer give not formatted vector , not correct answer if above interpretation correct. oh wait, expecting rownumbers.
as.matrix(apply( d, 1, which.min)) [,1] 1 1 2 4 3 3 4 3 5 1 6 1 7 2 8 2 9 4 10 4 11 1 12 3 13 1 14 1 15 3 16 3 17 2 18 3 19 2 20 4
Comments
Post a Comment