国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Java > 正文

Java編程通過匹配合并數據實例解析(數據預處理)

2024-07-13 10:17:13
字體:
來源:轉載
供稿:網友

本文研究的主要是Java編程通過匹配合并數據(數據預處理)的相關內容,具體如下。

數據描述

以下程序是對如下格式的數據進行合并處理。

java,預處理,java數據預處理,java預處理代碼,預處理語句,合并,數據

這個表的每一行表示用戶id及用戶的特征。其中,一個用戶只有一個特征向量,即第一列不會重復。

java,預處理,java數據預處理,java預處理代碼,預處理語句,合并,數據

這張表的第一列,表示用戶的id,第二列表示用戶所看的電影,第三列表示用戶對電影的打分(1-13分),第四列表示用戶對電影的打分,但分值范圍是1-5分。

問題描述

在做數據預處理時,如何將第二張表添加上用戶特征呢?其實,方法很簡單,將第二張表的用戶id與第一張表的用戶id進行匹配就行。合并結果如下圖所示。

java,預處理,java數據預處理,java預處理代碼,預處理語句,合并,數據

數據處理程序

javascript/59625.html">java;">package deal;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStreamReader;import java.math.BigDecimal;import java.util.ArrayList;import java.util.HashMap;import java.util.List;/* * author:合肥工業大學 管院學院 錢洋  * email:1563178220@qq.com*/public class GetPUser {	public static List<String> readDocs(String docsPath,String code) throws IOException{		BufferedReader reader = new BufferedReader( new InputStreamReader( new FileInputStream( new File(docsPath)),code));		String s=null;		List<String> userproductscore=new ArrayList<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( new File(docsPath1)),code1));		String s1=null;		HashMap<String,String> userfeaturemap=new HashMap<String,String>();		while ((s1=reader1.readLine())!=null) {			String arr[]=s1.split("/t");			String feature="";			for (int i = 1; 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> match(List<String> userproductscore,HashMap<String, String> userfeaturemap) throws IOException{		List<String> userscoreandfeature=new ArrayList<>();		for (int i = 0; i < userproductscore.size(); i++) {			//獲取用戶id			String user_id=userproductscore.get(i).split("/t")[0];			//獲取用戶特征			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 {		//讀取兩個文本		List<String> userproductscore=readDocs("data/train/ydata-ymovies-user-movie-ratings-train-v1_0.txt","gbk");		HashMap<String, String> userfeaturemap=MAPread("data/fileofuser/yahoo.txt","utf-8");		//匹配結果		match(userproductscore,userfeaturemap);	}}

總結

以上就是本文關于Java編程通過匹配合并數據實例解析(數據預處理)的全部內容,希望對大家有所幫助。感興趣的朋友可以繼續參閱本站其他相關專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 汉川市| 垣曲县| 温泉县| 甘德县| 兰州市| 咸宁市| 周宁县| 万州区| 镇康县| 府谷县| 安泽县| 尚义县| 长白| 陇南市| 安溪县| 巴彦淖尔市| 洛隆县| 石楼县| 镇平县| 阿合奇县| 铁岭市| 彭泽县| 红安县| 威远县| 德兴市| 渑池县| 泸溪县| 墨竹工卡县| 古交市| 乌兰察布市| 中山市| 新兴县| 菏泽市| 夏河县| 星子县| 珠海市| 湘阴县| 安仁县| 泌阳县| 宜春市| 林西县|