Tôi có khung dữ liệu sau trong R:độc đáo() trong hơn một biến
> str(df)
'data.frame': 545227 obs. of 15 variables:
$ ykod : int 93 93 93 93 93 93 93 93 93 93 ...
$ yad : Factor w/ 42 levels "BAKUGAN","BARBIE",..: 30 30 30 30 30 30 30 30 30 30 ...
$ per : Factor w/ 3 levels "2 AYLIK","3 AYLIK",..: 3 3 3 3 3 3 3 3 3 3 ...
$ donem: int 201101 201101 201101 201101 201101 201101 201101 201101 201101 201101 ...
$ sayi : int 201101 201101 201101 201101 201101 201101 201101 201101 201101 201101 ...
$ mkod : int 4 5 9 11 12 18 20 22 25 26 ...
$ mad : Factor w/ 10464 levels " Defne Market ",..: 405 8075 9710 10145 9297 7973 2542 3892 2759 5769 ...
$ mtip : Factor w/ 29 levels "Abone Bürosu ",..: 2 20 20 2 2 2 2 2 2 2 ...
$ kanal: Factor w/ 2 levels "OB","SS": 2 2 2 2 2 2 2 2 2 2 ...
$ bkod : int 110565 110565 110565 110565 110565 110565 110565 110565 110565 110565 ...
$ bad : Factor w/ 212 levels "4. Levent","500 Evler",..: 167 167 167 167 167 167 167 167 167 167 ...
$ bolge: Factor w/ 12 levels "Adana Şehiriçi",..: 7 7 7 7 7 7 7 7 7 7 ...
$ sevk : int 2 3 3 3 2 2 2 6 2 2 ...
$ iade : int 2 1 0 2 0 2 1 0 0 2 ...
$ satis: int 0 2 3 1 2 0 1 6 2 0 ...
Tôi muốn liệt kê độc đáo (như DISTINCT SQL của) các giá trị cho nhiều biến được chọn. Ví dụ, unique(yad)
mang lại cho tôi tên của mỗi 42 yếu tố, nhưng tôi cần phải giải nén hai cột (yad
và per
với nhau, với tất cả sự kết hợp độc đáo):
yad per
--- ---
BARBIE AYLIK
BAKUGAN 2 AYLIK
MICKEY MOUSE 2 AYLIK
TINKERBELL 3 AYLIK
... ...
Làm thế nào tôi có thể đạt được điều này?
+ 1 Cũng khuyên bạn nên chuẩn hóa chuỗi (cho phép, gsub ra các ký tự đặc biệt, vv). –
Làm thế nào để làm điều đó nếu 'df' là ma trận? Tôi sẽ biến nó thành 'data.frame', hay có chức năng để làm điều đó? – sop
Trên thực tế tôi đã tìm thấy 'unique.matrix()' đã thực hiện công việc, nhờ anyway – sop