pracuję z funkcją cięcia, aby przygotować dane dla histogramu barplot ale biec w pozornej sprzeczności między moimi etykiet i przerw:Cut i etykiety/długość przerw konflikt
Error in cut.default(sample(1:1e+05, 500, T), breaks = sq, labels = sprintf("$%.0f", : labels/breaks length conflict
Oto przykład . Udaję, że są to dane o dochodach, wykorzystujące sekwencję od 0 do 100 000 USD w koszach o wartości 10 000 USD. Używam tej samej zmiennej do generowania zarówno przerw, jak i etykiet, z niewielkim formatowaniem po stronie etykiety. Pomyślałem, że z jakiegoś powodu mogą mieć różną długość w porównaniu do wektora postaci, ale wydają się mieć tę samą długość, nadal.
> sq<-seq(0,100000,10000)
> cut(sample(1:100000, 500, T),breaks=sq,labels=sprintf("$%.0f",sq))
> length(sprintf("$%.0f",sq))
[1] [11]
> length(sq)
[1] [11]
EDIT:
Per @thelatemail i sugestie @Josh O'Briena, zmieniłem kod do tego i rzeczy są sprawne. cut(sample(1:100000, 500, T),breaks=sq,labels=sprintf("$%.0f",sq[-1]))
'długości (tabela (rozcięcie (przykładowy (1: 100000, 500, T), przerwy = kw)))' jest '10', a tym samym swoją niedopasowanie. – thelatemail
Jeśli końcowy wynik będzie histogramem, dlaczego po prostu nie użyjesz parametru 'breaks' do funkcji' hist() '? –
Tak właśnie zrobiłem. Ale byłem ciekawy, dlaczego nie mogę rozwiązać problemu "cut". – ako