Saya memiliki kumpulan data berikut, 'data':
A1 A2 A3 A4 A5
case1 1234 2234 223 4455 7334
case2 1254 2234 200
case3 1234 9234
case4 1274 5234 228 4655 2534
case5 1234 2634 273 7455
Setiap baris mewakili sebuah kasus dan setiap kolom mewakili atribut kode untuk kasus tersebut, dimana setiap kasus dapat memiliki beberapa kode atau tidak ada kode sama sekali. Tidak ada kasus yang dapat memiliki banyak contoh kode yang sama.
Yang juga penting adalah setiap kode dapat terdiri dari 3 atau 4 digit dan kode 4 digit tersebut merupakan turunan dari kode 3 digit tersebut. Misalnya, '123' merupakan kode yang lebih luas daripada '1234'; '4' menunjukkan jenis kode '123' yang lebih spesifik.
Fungsi asli saya untuk menarik kasus yang memiliki kode '1234' tadi
dataf <- filter(data, A1:A5 == 1234)
, tetapi pernyataan tersebut mencoba untuk mengevaluasi dengan pernyataan & daripada pernyataan OR, bukan itu yang saya cari.
Jadi saat ini saya memfilter seperti ini:
dataf <- filter(data, A1 == 1234 | A2 == 1234 | A3 == 1234 | A4 == 1234 | A5 == 1234)
yang berfungsi dengan baik untuk satu kode tertentu, tetapi jumlah pengetikan jika saya ingin memfilter lebih banyak kode akan menjadi penghalang.
Pada akhirnya, yang ingin saya lakukan adalah menanyakan semua kolom A1:A5 untuk setiap kasus yang memiliki kode yang cocok dengan nilai apa pun dalam rentang tersebut
123:150
or
1230:1500
, karena menanyakan kedua rentang ini akan mengembalikan saya kasus yang cocok dengan kode induk dan kode anak mana pun.