提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。
提示:以下是本篇文章正文内容,下面案例可供参考
一、spark过滤数据
示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。
mapDataset = mapDataset.filter((FilterFunction<Row>) row -> {
String modelFileName = row.getAs("TileReferences");
if (modelFileName == null) {
return false;
}
if (modelFileName.contains("16_53500_28487")) {
return true;
}
return false;
});
mapDataset.show();
把dataset中特定数据筛选出来。
mapDataset.filter("LmGUID == 'add_jpn_tky_001'").show()
二、java无符号偏移
如果是int型数据,直接使用无符号偏移>>>就可以了。
这边针对的是byte数据,没有现成的方法,需要特殊处理一下。
比如Byte数据-128,对应二进制是1000 0000,即byte temp = -128;对temp进行无符号右移,如果直接执行 temp = (byte)(temp <<< 6)语句,结果是-2,而不是2,此时需要这样处理:
byte temp = (byte) ((temp & 0xff) >>> 6);
Ok!
三、dataset过滤
result.filter("tileId == '16_4196_18788'").show(false);
四、判断对象是否为空指针
不能使用.isEmpty()来判断独享是否为空指针。 isEmpty源码:
public boolean isEmpty(){
return value.length == 0;
}
五、对输入数据标准化处理
public void doSomething() {
File file = new File(HOME_PATH, fileName);
try {
String canonicalPath = file.getCanonicalPath();
if (!validatePath(canonicalPath)) {
throw new IllegalArgumentException("Path Traversal vulnerability!");
}
... // 对文件进行读写等操作
} catch (IOException ex) {
throw new IllegalArgumentException("An exception occurred ...", ex);
}
}
private boolean validatePath(String path) {
return path.startsWith(HOME_PATH);
}
五、java判断double是否为0
使用Double.compare()方法
Double类是Java提供的一个封装了基本数据类型double的类,其中compare()方法可以用于比较两个double类型的值。
// Java Program to illustrate
// the Double.compare() method
import java.lang.Double;
public class GFG {
public static void main(String[] args)
{
// Get the two double values
// to be compared
Double d1 = 1023d;
Double d2 = 1023d;
// function call to compare two double values
if (Double.compare(d1, d2) == 0) {
System.out.println("d1=d2");
}
else if (Double.compare(d1, d2) < 0) {
System.out.println("d1<d2");
}
else {
System.out.println("d1>d2");
}
}
}
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。