我在集群中工作,我没有改变文件log4j.properties停止信息,而使用pyspark登录权限(如在第一个答案解释这里.)下面的解决方案,如火花上述问题的第一个答案解释工作-shell(scala)
import org.apache.log4j.Logger
import org.apache.log4j.Level
Run Code Online (Sandbox Code Playgroud)
但对于python(即pyspark)的火花,它不起作用,也不起作用
Logger.getLogger("org").setLevel(Level.OFF)
Logger.getLogger("akka").setLevel(Level.OFF)
Run Code Online (Sandbox Code Playgroud)
如何在不更改log4j.properties文件的情况下停止在pyspark中详细打印信息?
我知道这个问题已经在几个地方提出过,我一直试图找出一个可能很好的解决方案几个小时但是失败了.这就是我问这个的原因.
所以,我有一个巨大的数据文件(~5GB),我曾经fread()读过这个
library(data.table)
df<- fread('output.txt', sep = "|", stringsAsFactors = TRUE)
head(df, 5)
age income homeowner_status_desc marital_status_cd gender
1: $35,000 - $49,999
2: 35 - 44 $35,000 - $49,999 Rent Single F
3: $35,000 - $49,999
4:
5: $50,000 - $74,999
str(df)
Classes ‘data.table’ and 'data.frame': 999 obs. of 5 variables:
$ age : chr "" "35 - 44" "" "" ...
$ income : chr "$35,000 - $49,999" "$35,000 - $49,999" "$35,000 - $49,999" "" ...
$ …Run Code Online (Sandbox Code Playgroud) 我有包含矩阵的文本文件.我想把它作为矩阵在朱莉娅中阅读.
文本文件如下:
0 0 0 0 0 0 0
1 0 0 0 0 0 0
1 0 0 0 0 0 1
1 0 0 0 1 1 0
Run Code Online (Sandbox Code Playgroud)
在matlab中,您可以执行以下操作来创建矩阵M:
file='name.txt';
[M] = load(file);
Run Code Online (Sandbox Code Playgroud)
如何在朱莉娅做同样的事情?
我正在阅读 Spark 书中的高级分析,在第二章中它有以下代码片段:
import org.apache.spark.util.StatCounter
class NAStatCounter extends Serializable {
val stats: StatCounter = new StatCounter()
var missing: Long = 0
def add(x: Double): NAStatCounter = {
if (java.lang.Double.isNaN(x)) {
missing += 1
} else {
stats.merge(x)
}
this
}
def merge(other: NAStatCounter): NAStatCounter = {
stats.merge(other.stats)
missing += other.missing
this
}
override def toString = {
"stats: " + stats.toString + " NaN: " + missing
}
}
Run Code Online (Sandbox Code Playgroud)
在这里,我真的对使用this. 在这两个函数中add,merge它是否指的NAStatCounter是代码定义的原始函数?
书评: …
我正在一个集群中,数据集hdfs以分布式方式保存.这是我有的:
[hmi@bdadev-5 ~]$ hadoop fs -ls /bdatest/clm/data/
Found 1840 items
-rw-r--r-- 3 bda supergroup 0 2015-08-11 00:32 /bdatest/clm/data/_SUCCESS
-rw-r--r-- 3 bda supergroup 34404390 2015-08-11 00:32 /bdatest/clm/data/part-00000
-rw-r--r-- 3 bda supergroup 34404062 2015-08-11 00:32 /bdatest/clm/data/part-00001
-rw-r--r-- 3 bda supergroup 34404259 2015-08-11 00:32 /bdatest/clm/data/part-00002
....
....
Run Code Online (Sandbox Code Playgroud)
数据格式如下:
[hmi@bdadev-5 ~]$ hadoop fs -cat /bdatest/clm/data/part-00000|head
V|485715986|1|8ca217a3d75d8236|Y|Y|Y|Y/1X||Trimode|SAMSUNG|1x/Trimode|High|Phone|N|Y|Y|Y|N|Basic|Basic|Basic|Basic|N|N|N|N|Y|N|Basic-Communicator|Y|Basic|N|Y|1X|Basic|1X|||SAM|Other|SCH-A870|SCH-A870|N|N|M2MC|
Run Code Online (Sandbox Code Playgroud)
所以,我想要做的是计算原始数据文件中的总行数data.我的理解是,分布式块喜欢part-00000,part-00001等有重叠.所以只计算part-xxxx文件中的行数并将它们相加就不起作用了.原始数据集data的大小也是如此~70GB.如何有效地找出总行数?