Penelitian utama dalam artikel ini adalah pemrograman Java melalui pencocokan dan menggabungkan data (preprocessing data), sebagai berikut.
Deskripsi data
Program berikut menggabungkan data dalam format berikut.
Setiap baris tabel ini mewakili ID pengguna dan karakteristik pengguna. Di antara mereka, pengguna hanya memiliki satu vektor fitur, yaitu, kolom pertama tidak akan diulang.
Kolom pertama dari tabel ini mewakili ID pengguna, kolom kedua mewakili film yang ditonton pengguna, kolom ketiga mewakili skor pengguna film (1-13 poin), dan kolom keempat mewakili skor pengguna film, tetapi rentang skor adalah 1-5 poin.
Deskripsi masalah
Saat preprocessing data, bagaimana menambahkan karakteristik pengguna ke tabel kedua? Bahkan, metode ini sangat sederhana. Cocokkan ID pengguna tabel kedua dengan ID pengguna tabel pertama. Hasil gabungan ditunjukkan pada gambar di bawah ini.
Prosesor data
kesepakatan paket; impor java.io.bufferedreader; impor java.io.file; impor java.io.fileinputStream; impor java.io.ioException; impor java.io.inputStreamreader; impor java.math.bigdecimal; impor java.util.raylis; java.util.list;/** Penulis: Qian Yang, Sekolah Manajemen, Universitas Teknologi Hefei* Email: [email protected]*/public Class GetPuser {Daftar Statis Publik (StringReader (String Docspath, String Code) Lembar IoException {BufferedReader (String Docspath, String Code) Lembar IoException {BufferedReader (String Docspath) file baru (docspath)), kode)); string s = null; daftar <string> userproductscore = arraylist baru <string> (); while ((s=reader.readLine())!=null) {userproductscore.add(s);}reader.close();return userproductscore;}public static HashMap<String, String> MAPread(String docsPath1,String code1) throws IOException{BufferedReader reader1 = new BufferedReader( new InputStreamReader( new FileInputStream (FileInputStream baru (file baru (docspath1)), code1)); string s1 = null; hashmap <string, string> userfeatureMap = hashmap baru <string, string> (); untuk (s1 = reader1.readline ())! = Null) {string ard [] = S1. " i < arr.length; i++) {BigDecimal db = new BigDecimal(arr[i]);String ii = db.toPlainString();feature+=ii+" ";}userfeaturemap.put(s1.split("/t")[0], feature);}reader1.close();return userfeaturemap;}public static List<String> Cocok (Daftar <String> UserProductScore, HashMap <String, String> UserFeatureMap) melempar ioException {List <string> UsersCoreAndFeature = ArrayList baru <> (); user_id = userproductscore.get (i) .split ("/t") [0]; // Dapatkan fitur pengguna string userfeature = userfeaturemap.get(user_id);userscoreandfeature.add(userproductscore.get(i)+"/t"+userfeature);System.out.println(userproductscore.get(i)+"/t"+userfeature);}return userscoreandfeature;}public static void main(String[] args) throws IOException {// Baca dua daftar teks <string> userproductscore = readDocs ("data/train/ydata-hymovies- user-movie-rates-train-v1_0.txt", "gbk"); hashmap <string, string> userfeatureMap = MapRead ("data/fileofuser/yahoo. cocok (userproductscore, userfeatureMap);}}
Meringkaskan
Di atas adalah semua tentang pemrograman Java melalui pencocokan dan menggabungkan analisis instance data (preprocessing data). Saya harap ini akan membantu semua orang. Teman yang tertarik dapat terus merujuk ke topik terkait lainnya di situs ini. Jika ada kekurangan, silakan tinggalkan pesan untuk menunjukkannya. Terima kasih teman atas dukungan Anda untuk situs ini!