国产探花免费观看_亚洲丰满少妇自慰呻吟_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教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 安顺市| 固镇县| 驻马店市| 石台县| 黎城县| 武隆县| 岳西县| 澄迈县| 桑日县| 大足县| 新密市| 张家港市| 县级市| 梅州市| 四子王旗| 会理县| 尖扎县| 宣城市| 剑阁县| 崇文区| 常山县| 东辽县| 济阳县| 获嘉县| 萝北县| 安康市| 玉山县| 呼图壁县| 罗源县| 六安市| 桂林市| 永平县| 左权县| 隆安县| 偏关县| 治县。| 高淳县| 郸城县| 南丹县| 易门县| 乡城县|