有多种方法,比较常见的有两种:
1、可以先安装打印机程序,然后根据提示接通打印机数据线和电源,它会自动安装以下驱动程序。
2、直接在控制面板-打印机-添加打印机。然后自己搜索所对应的打印机驱动程序。
作为职场人士,我们经常会用到各种办公软件来提高工作效率和处理文档。其中,Yozo办公软件是一个备受争议的办公利器。虽然它号称拥有众多强大的功能和实用的工具,但无可否认,许多用户对它的使用体验却充满了恶心。
首先,Yozo办公软件在用户界面设计上可谓是一败涂地。无论是界面的布局还是配色的选择,都显得过于陈旧和不合时宜。与现代化的办公软件相比,Yozo显得相当落伍,给人一种十年前的老旧感。这不仅令人感到不适,更让人怀疑其开发团队的用心以及对用户体验的关注程度。
此外,Yozo办公软件的使用流程和操作方式也令人感到头疼。在处理文档时,常常出现各种难以理解和操作的问题。例如,在插入图片时,无法自动调整大小和位置,用户需要手动调整多次,才能达到满意的效果。这种低效的操作方式不仅浪费了用户的时间,还减缓了工作进展。更糟糕的是,软件总是不时地出现卡顿和崩溃等问题,让人无法顺利完成工作。
虽然Yozo办公软件声称拥有强大的功能,但在实际使用中,许多功能却表现得不尽人意。例如,其自动修复功能经常表现出错误的判断,导致文档格式错乱。而且,软件对于复杂文档的兼容性也不理想,导致文本、图片和表格等元素的排版混乱。令人恼火的是,这些问题的修复往往需要耗费大量的时间和精力,让人对软件的稳定性产生了极大的怀疑。
此外,Yozo办公软件的技术支持和售后服务也给人留下了极其恶劣的印象。用户在遇到问题时,往往需要长时间等待才能得到解答。即使联系到客服,也很难得到及时和有效的帮助。这种不负责任的态度让用户感到被忽视和遗弃,进一步加深了对Yozo办公软件的反感。
综上所述,Yozo办公软件是一个令人恶心的办公利器。其落后的界面设计、低效的操作方式、不稳定的功能以及糟糕的售后服务,给用户带来了极大的困扰和不满。作为一款办公软件,它应该能够提供更好的用户体验和更高效的工作效率,而不仅仅是一个虚有其表的功能堆砌。希望Yozo办公软件的开发团队能够听取用户的声音,全面改进软件的设计和功能,真正成为用户得心应手的办公利器。
1、用鼠标选取区域,点击右键选择删除,可以选择删除整行或整列。
2、鼠标选中右边不要的列的第一列,按Ctrl + Shift +右箭头,就会选中右边所有的列,右键单击选择删除即可。
3、鼠标选中下面不要的行的第一行,按Ctrl + Shift +下箭头,可以选中下面所有的行,右键单击选择删除即可。
4、如果需要删除的不是连续的行或列,可以将需要的部分隐藏,然后ctrl+A全选,ctrl+G定位条件,选择“可见单元格”,点击确定后删除,可见部分就会全部被删除,只剩下隐藏行列,再点击取消隐藏就可以了。
悠纪品牌,成立于2012年,自成立以来,悠纪品牌以市场为导向,坚持走专业化发展之路,打造全方位的经营管理模式,坚持用自己的服务去打动客户,深受广大客户和消费者的青睐。目前悠纪经营的产品覆盖到等行业。
悠纪品牌的线上店铺有悠纪化妆品旗舰店,主营的产品有:美容护理等,点击页面上方“官方旗舰店”即可进入查看悠纪的产品效果,价格等信息。虽然悠纪已经取得一些不错的成绩,但并没有减缓前进的步伐,仍在为成为行业中的知名品牌而努力着。
方法/步骤分步阅读
1
/6
第一种方法不需要安装任何软件 点击电脑右下角的开始按钮 选择控制面板
2
/6
在弹出的对话框中选择程序和功能选项 并点击
3
/6
在新弹出的页面中找到你需要卸载的软件图标或者名称
4
/6
右键单击你要卸载的软件 此时会出现卸载两个字 左键点击
5
/6
接下来就开始卸载软件了 一直按提示卸载就行了
6
/6
第二种就是有360软件的卸载方法 在电脑桌面上找到你想卸载的软件图标 右键点击 选择360强力删除就行了
打开yozo软件,然后点击设置就能添加复选框
yozo小苏打洗面奶很好用。
这款yozo小苏打洗面奶甄选Q10牛奶系列,针对肌肤出油、暗沉、清洁不到位等问题,提炼牛奶护肤能量,令肌肤水润嘭弹,通透亮采!
而且其含有辅酶Q10,可以呵护由于紫外光照射造成的肌肤受损,还可以缓解胶原蛋白的缺失、抑衰老,组成天然保湿因子,持续缩水,让你的肌肤水润不拔干!
这个品牌还不错的,也有点名气,感觉比较好,也比较便宜。成立于2012年,自成立以来,悠纪品牌以市场为导向,坚持走专业化发展之路,打造全方位的经营管理模式,坚持用自己的服务去打动客户,深受广大客户和消费者的青睐。
方法一:回收站恢复
如果文档是在桌面删除的,电脑系统会自动将删除的数据保存在回收站里面,我们可以在回收站里面进行恢复。直接打开回收站,选择“需要恢复的文件”,右击“还原”即可找回丢失文件。
回收站恢复主要适用于一些临时删除的文件,比如不小心按Delete删除,或者其它方式不小心删除后,导致文件出现临时删除的现象。
方法二:易我数据恢复软件
易我数据恢复软件可以完美地解决这个问题,详细教程如下:
步骤1. 选择Word文件位置
这是第一步。您必须清楚知道Word文件是在哪里丢失的,选择硬盘或文件夹。如果是在USB移动盘或SD卡上,请选择外置设备。
右键点击磁盘X:并点击「扫描」按钮。
步骤2. 扫描所有丢失资料
软件将立即开始扫描所有在磁盘上丢失的资料,您将在扫描结果中看到越来越多的资料。
步骤3. 选择Word文件并恢复
扫描完成后,在「筛选」的下拉列表中选择「文档」,以最快的速度找到Word文件。如果计算机上安装了Microsoft Word应用程序,则可以预览Word文件。最后,选择所需的文件并点击「恢复」。
之前看了Mahout官方示例 20news 的调用实现;于是想根据示例的流程实现其他例子。网上看到了一个关于天气适不适合打羽毛球的例子。
训练数据:
Day Outlook Temperature Humidity Wind PlayTennis
D1 Sunny Hot High Weak No
D2 Sunny Hot High Strong No
D3 Overcast Hot High Weak Yes
D4 Rain Mild High Weak Yes
D5 Rain Cool Normal Weak Yes
D6 Rain Cool Normal Strong No
D7 Overcast Cool Normal Strong Yes
D8 Sunny Mild High Weak No
D9 Sunny Cool Normal Weak Yes
D10 Rain Mild Normal Weak Yes
D11 Sunny Mild Normal Strong Yes
D12 Overcast Mild High Strong Yes
D13 Overcast Hot Normal Weak Yes
D14 Rain Mild High Strong No
检测数据:
sunny,hot,high,weak
结果:
Yes=》 0.007039
No=》 0.027418
于是使用Java代码调用Mahout的工具类实现分类。
基本思想:
1. 构造分类数据。
2. 使用Mahout工具类进行训练,得到训练模型。
3。将要检测数据转换成vector数据。
4. 分类器对vector数据进行分类。
接下来贴下我的代码实现=》
1. 构造分类数据:
在hdfs主要创建一个文件夹路径 /zhoujainfeng/playtennis/input 并将分类文件夹 no 和 yes 的数据传到hdfs上面。
数据文件格式,如D1文件内容: Sunny Hot High Weak
2. 使用Mahout工具类进行训练,得到训练模型。
3。将要检测数据转换成vector数据。
4. 分类器对vector数据进行分类。
这三步,代码我就一次全贴出来;主要是两个类 PlayTennis1 和 BayesCheckData = =》
package myTesting.bayes;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.util.ToolRunner;
import org.apache.mahout.classifier.naivebayes.training.TrainNaiveBayesJob;
import org.apache.mahout.text.SequenceFilesFromDirectory;
import org.apache.mahout.vectorizer.SparseVectorsFromSequenceFiles;
public class PlayTennis1 {
private static final String WORK_DIR = "hdfs://192.168.9.72:9000/zhoujianfeng/playtennis";
/*
* 测试代码
*/
public static void main(String[] args) {
//将训练数据转换成 vector数据
makeTrainVector();
//产生训练模型
makeModel(false);
//测试检测数据
BayesCheckData.printResult();
}
public static void makeCheckVector(){
//将测试数据转换成序列化文件
try {
Configuration conf = new Configuration();
conf.addResource(new Path("/usr/local/hadoop/conf/core-site.xml"));
String input = WORK_DIR+Path.SEPARATOR+"testinput";
String output = WORK_DIR+Path.SEPARATOR+"tennis-test-seq";
Path in = new Path(input);
Path out = new Path(output);
FileSystem fs = FileSystem.get(conf);
if(fs.exists(in)){
if(fs.exists(out)){
//boolean参数是,是否递归删除的意思
fs.delete(out, true);
}
SequenceFilesFromDirectory sffd = new SequenceFilesFromDirectory();
String[] params = new String[]{"-i",input,"-o",output,"-ow"};
ToolRunner.run(sffd, params);
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("文件序列化失败!");
System.exit(1);
}
//将序列化文件转换成向量文件
try {
Configuration conf = new Configuration();
conf.addResource(new Path("/usr/local/hadoop/conf/core-site.xml"));
String input = WORK_DIR+Path.SEPARATOR+"tennis-test-seq";
String output = WORK_DIR+Path.SEPARATOR+"tennis-test-vectors";
Path in = new Path(input);
Path out = new Path(output);
FileSystem fs = FileSystem.get(conf);
if(fs.exists(in)){
if(fs.exists(out)){
//boolean参数是,是否递归删除的意思
fs.delete(out, true);
}
SparseVectorsFromSequenceFiles svfsf = new SparseVectorsFromSequenceFiles();
String[] params = new String[]{"-i",input,"-o",output,"-lnorm","-nv","-wt","tfidf"};
ToolRunner.run(svfsf, params);
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("序列化文件转换成向量失败!");
System.out.println(2);
}
}
public static void makeTrainVector(){
//将测试数据转换成序列化文件
try {
Configuration conf = new Configuration();
conf.addResource(new Path("/usr/local/hadoop/conf/core-site.xml"));
String input = WORK_DIR+Path.SEPARATOR+"input";
String output = WORK_DIR+Path.SEPARATOR+"tennis-seq";
Path in = new Path(input);
Path out = new Path(output);
FileSystem fs = FileSystem.get(conf);
if(fs.exists(in)){
if(fs.exists(out)){
//boolean参数是,是否递归删除的意思
fs.delete(out, true);
}
SequenceFilesFromDirectory sffd = new SequenceFilesFromDirectory();
String[] params = new String[]{"-i",input,"-o",output,"-ow"};
ToolRunner.run(sffd, params);
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("文件序列化失败!");
System.exit(1);
}
//将序列化文件转换成向量文件
try {
Configuration conf = new Configuration();
conf.addResource(new Path("/usr/local/hadoop/conf/core-site.xml"));
String input = WORK_DIR+Path.SEPARATOR+"tennis-seq";
String output = WORK_DIR+Path.SEPARATOR+"tennis-vectors";
Path in = new Path(input);
Path out = new Path(output);
FileSystem fs = FileSystem.get(conf);
if(fs.exists(in)){
if(fs.exists(out)){
//boolean参数是,是否递归删除的意思
fs.delete(out, true);
}
SparseVectorsFromSequenceFiles svfsf = new SparseVectorsFromSequenceFiles();
String[] params = new String[]{"-i",input,"-o",output,"-lnorm","-nv","-wt","tfidf"};
ToolRunner.run(svfsf, params);
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("序列化文件转换成向量失败!");
System.out.println(2);
}
}
public static void makeModel(boolean completelyNB){
try {
Configuration conf = new Configuration();
conf.addResource(new Path("/usr/local/hadoop/conf/core-site.xml"));
String input = WORK_DIR+Path.SEPARATOR+"tennis-vectors"+Path.SEPARATOR+"tfidf-vectors";
String model = WORK_DIR+Path.SEPARATOR+"model";
String labelindex = WORK_DIR+Path.SEPARATOR+"labelindex";
Path in = new Path(input);
Path out = new Path(model);
Path label = new Path(labelindex);
FileSystem fs = FileSystem.get(conf);
if(fs.exists(in)){
if(fs.exists(out)){
//boolean参数是,是否递归删除的意思
fs.delete(out, true);
}
if(fs.exists(label)){
//boolean参数是,是否递归删除的意思
fs.delete(label, true);
}
TrainNaiveBayesJob tnbj = new TrainNaiveBayesJob();
String[] params =null;
if(completelyNB){
params = new String[]{"-i",input,"-el","-o",model,"-li",labelindex,"-ow","-c"};
}else{
params = new String[]{"-i",input,"-el","-o",model,"-li",labelindex,"-ow"};
}
ToolRunner.run(tnbj, params);
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("生成训练模型失败!");
System.exit(3);
}
}
}
package myTesting.bayes;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import org.apache.commons.lang.StringUtils;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.fs.PathFilter;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.mahout.classifier.naivebayes.BayesUtils;
import org.apache.mahout.classifier.naivebayes.NaiveBayesModel;
import org.apache.mahout.classifier.naivebayes.StandardNaiveBayesClassifier;
import org.apache.mahout.common.Pair;
import org.apache.mahout.common.iterator.sequencefile.PathType;
import org.apache.mahout.common.iterator.sequencefile.SequenceFileDirIterable;
import org.apache.mahout.math.RandomAccessSparseVector;
import org.apache.mahout.math.Vector;
import org.apache.mahout.math.Vector.Element;
import org.apache.mahout.vectorizer.TFIDF;
import com.google.common.collect.ConcurrentHashMultiset;
import com.google.common.collect.Multiset;
public class BayesCheckData {
private static StandardNaiveBayesClassifier classifier;
private static Map<String, Integer> dictionary;
private static Map<Integer, Long> documentFrequency;
private static Map<Integer, String> labelIndex;
public void init(Configuration conf){
try {
String modelPath = "/zhoujianfeng/playtennis/model";
String dictionaryPath = "/zhoujianfeng/playtennis/tennis-vectors/dictionary.file-0";
String documentFrequencyPath = "/zhoujianfeng/playtennis/tennis-vectors/df-count";
String labelIndexPath = "/zhoujianfeng/playtennis/labelindex";
dictionary = readDictionnary(conf, new Path(dictionaryPath));
documentFrequency = readDocumentFrequency(conf, new Path(documentFrequencyPath));
labelIndex = BayesUtils.readLabelIndex(conf, new Path(labelIndexPath));
NaiveBayesModel model = NaiveBayesModel.materialize(new Path(modelPath), conf);
classifier = new StandardNaiveBayesClassifier(model);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("检测数据构造成vectors初始化时报错。。。。");
System.exit(4);
}
}
/**
* 加载字典文件,Key: TermValue; Value:TermID
* @param conf
* @param dictionnaryDir
* @return
*/
private static Map<String, Integer> readDictionnary(Configuration conf, Path dictionnaryDir) {
Map<String, Integer> dictionnary = new HashMap<String, Integer>();
PathFilter filter = new PathFilter() {
@Override
public boolean accept(Path path) {
String name = path.getName();
return name.startsWith("dictionary.file");
}
};
for (Pair<Text, IntWritable> pair : new SequenceFileDirIterable<Text, IntWritable>(dictionnaryDir, PathType.LIST, filter, conf)) {
dictionnary.put(pair.getFirst().toString(), pair.getSecond().get());
}
return dictionnary;
}
/**
* 加载df-count目录下TermDoc频率文件,Key: TermID; Value:DocFreq
* @param conf
* @param dictionnaryDir
* @return
*/
private static Map<Integer, Long> readDocumentFrequency(Configuration conf, Path documentFrequencyDir) {
Map<Integer, Long> documentFrequency = new HashMap<Integer, Long>();
PathFilter filter = new PathFilter() {
@Override
public boolean accept(Path path) {
return path.getName().startsWith("part-r");
}
};
for (Pair<IntWritable, LongWritable> pair : new SequenceFileDirIterable<IntWritable, LongWritable>(documentFrequencyDir, PathType.LIST, filter, conf)) {
documentFrequency.put(pair.getFirst().get(), pair.getSecond().get());
}
return documentFrequency;
}
public static String getCheckResult(){
Configuration conf = new Configuration();
conf.addResource(new Path("/usr/local/hadoop/conf/core-site.xml"));
String classify = "NaN";
BayesCheckData cdv = new BayesCheckData();
cdv.init(conf);
System.out.println("init done...............");
Vector vector = new RandomAccessSparseVector(10000);
TFIDF tfidf = new TFIDF();
//sunny,hot,high,weak
Multiset<String> words = ConcurrentHashMultiset.create();
words.add("sunny",1);
words.add("hot",1);
words.add("high",1);
words.add("weak",1);
int documentCount = documentFrequency.get(-1).intValue(); // key=-1时表示总文档数
for (Multiset.Entry<String> entry : words.entrySet()) {
String word = entry.getElement();
int count = entry.getCount();
Integer wordId = dictionary.get(word); // 需要从dictionary.file-0文件(tf-vector)下得到wordID,
if (StringUtils.isEmpty(wordId.toString())){
continue;
}
if (documentFrequency.get(wordId) == null){
continue;
}
Long freq = documentFrequency.get(wordId);
double tfIdfValue = tfidf.calculate(count, freq.intValue(), 1, documentCount);
vector.setQuick(wordId, tfIdfValue);
}
// 利用贝叶斯算法开始分类,并提取得分最好的分类label
Vector resultVector = classifier.classifyFull(vector);
double bestScore = -Double.MAX_VALUE;
int bestCategoryId = -1;
for(Element element: resultVector.all()) {
int categoryId = element.index();
double score = element.get();
System.out.println("categoryId:"+categoryId+" score:"+score);
if (score > bestScore) {
bestScore = score;
bestCategoryId = categoryId;
}
}
classify = labelIndex.get(bestCategoryId)+"(categoryId="+bestCategoryId+")";
return classify;
}
public static void printResult(){
System.out.println("检测所属类别是:"+getCheckResult());
}
}