我在执行Spark应用程序时遇到问题.
源代码:
// Read table From HDFS
val productInformation = spark.table("temp.temp_table1")
val dict = spark.table("temp.temp_table2")
// Custom UDF
val countPositiveSimilarity = udf[Long, Seq[String], Seq[String]]((a, b) =>
dict.filter(
(($"first".isin(a: _*) && $"second".isin(b: _*)) || ($"first".isin(b: _*) && $"second".isin(a: _*))) && $"similarity" > 0.7
).count
)
val result = productInformation.withColumn("positive_count", countPositiveSimilarity($"title", $"internal_category"))
// Error occurs!
result.show
Run Code Online (Sandbox Code Playgroud)
错误信息:
org.apache.spark.SparkException: Job aborted due to stage failure: Task 0 in stage 54.0 failed 4 times, most recent failure: Lost task 0.3 in stage 54.0 (TID …Run Code Online (Sandbox Code Playgroud) 所以我现在有SSH工作没有问题,我已经在我的设置了一个新的git repo
/home/Tom/Git/myapp.git
我提供了访问另一个用于托管repo的驱动器,因此目录"Git"实际上存在于D:\ using上
ln -s /cygdrive/d/Git/myapp.git
现在当我尝试使用时克隆我的git repo
SSH://名@ ip地址:端口/混帐/ myapp.git
我得到了
致命:'/ Git/myapp.git'似乎不是一个git存储库
有任何想法吗 ?
编辑:我甚至在/Tom/myapp.git内创建了一个目录并试图使用
git clone ssh:// name @ ipaddress:port/myapp.git
而我仍然得到错误?也试试
git clone -v ssh:// name @ ipaddress:port /~/myapp.git
错误是
致命:'〜/ myapp.git'似乎不是git存储
库D中的初始化空Git存储库:/Local/myapp/.git/
致命:远程端意外挂断
好的,我想阅读tar.gz文件(或xy)的内容,但这是一回事.我正在做的或多或少是这样的:
TarArchiveInputStream tarInput = new TarArchiveInputStream(new GzipCompressorInputStream(new FileInputStream("c://temp//test.tar.gz")));
TarArchiveEntry currentEntry = tarInput.getNextTarEntry();
BufferedReader br = null;
StringBuilder sb = new StringBuilder();
while (currentEntry != null) {
File f = currentEntry.getFile();
br = new BufferedReader(new FileReader(f));
System.out.println("For File = " + currentEntry.getName());
String line;
while ((line = br.readLine()) != null) {
System.out.println("line="+line);
}
}
if (br!=null) {
br.close();
}
Run Code Online (Sandbox Code Playgroud)
但是当我调用getFile方法时,我得到null TarArchiveEntry.
我正在使用Apache commons compress 1.8.1
要为数据帧添加前缀/后缀,我通常会执行以下操作.
例如,要添加后缀'@',
df = df.astype(str) + '@'
Run Code Online (Sandbox Code Playgroud)
这基本上附加了'@'所有单元格值.
我想知道如何删除此后缀.是否有一个pandas.DataFrame类直接从整个DataFrame中删除特定前缀/后缀字符的方法?
我尝试迭代行(作为系列),同时使用rstrip('@')如下:
for index in range(df.shape[0]):
row = df.iloc[index]
row = row.str.rstrip('@')
Run Code Online (Sandbox Code Playgroud)
现在,为了使这个系列的数据帧,
new_df = pd.DataFrame(columns=list(df))
new_df = new_df.append(row)
Run Code Online (Sandbox Code Playgroud)
但是,这不起作用.提供空数据框.
有什么东西真的很基本我错过了吗?
我在Debian Squeeze,我想安装模块igraph.所以,我正在完成所有步骤,但是当我尝试做的时候
python setup.py build
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:
error: command 'gcc' failed with exit status 1
Run Code Online (Sandbox Code Playgroud)
但是,在终端消息的开头我得到如下错误:
In file included from src/arpackobject.c:23:
src/arpackobject.h:26:20: error: Python.h: No such file or directory
Run Code Online (Sandbox Code Playgroud)
我该如何解决?
这是终端的完整输出:
# python setup.py build
Include path: /usr/local/include/igraph
Library path: /usr/local/lib
running build
running build_py
running build_ext
building 'igraph._igraph' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/local/include/igraph -I../../build/include -I../../include -I/usr/local/include -I/usr/include -I/usr/include/python2.7 -c src/arpackobject.c -o build/temp.linux-x86_64-2.7/src/arpackobject.o
In file included from src/arpackobject.c:23:
src/arpackobject.h:26:20: error: …Run Code Online (Sandbox Code Playgroud) 我想做这里显示的例子.它在我的机器上运行得非常好.问题是,我无法将节点的坐标作为存储在变量pos中某处的数组.我该怎么做呢?
在此先感谢您的回复!
当我遇到一个问题时,我用R解决了微分方程:我需要在我的情节中添加Isoclines和方向场,但我不知道如何.我应该安装什么软件包/我应该调用什么功能/我应该手动完成所有功能吗?
我已经有了一种聚类图形的方法,因此聚类过程不是问题.我想要做的是,一旦我们将所有节点聚集在一起 - 用Python绘制聚类图,如下所示:

我查看了networkx,igraph和graph-tool,但它们似乎是在进行聚类,而不是绘图.我应该使用什么库来绘制已经聚类的图形的任何想法和命题,这将最大限度地减少交叉链接的数量?
python graph cluster-analysis graph-drawing unsupervised-learning
我有一个包含许多小.gz文件的文件夹(压缩的csv文本文件).我需要在我的Spark工作中阅读它们,但问题是我需要根据文件名中的信息进行一些处理.因此,我没有使用:
JavaRDD<<String>String> input = sc.textFile(...)
Run Code Online (Sandbox Code Playgroud)
因为据我所知,我无法以这种方式访问文件名.相反,我用过:
JavaPairRDD<<String>String,String> files_and_content = sc.wholeTextFiles(...);
Run Code Online (Sandbox Code Playgroud)
因为这样我得到了一对文件名和内容.但是,似乎这样,输入阅读器无法从gz文件中读取文本,而是读取二进制Gibberish.
所以,我想知道我是否可以将其设置为以某种方式读取文本,或者使用以下方式访问文件名 sc.textFile(...)
这是一个有效的代码示例:
JavaPairDStream<String, String> messages = KafkaUtils.createStream(javaStreamingContext, zkQuorum, group, topicMap);
messages.print();
JavaDStream<String> lines = messages.map(new Function<Tuple2<String, String>, String>() {
@Override
public String call(Tuple2<String, String> tuple2) {
return tuple2._2();
}
});
Run Code Online (Sandbox Code Playgroud)
我得到以下错误:
ERROR:
org.apache.spark.SparkException: Task not serializable
at org.apache.spark.util.ClosureCleaner$.ensureSerializable(ClosureCleaner.scala:166)
at org.apache.spark.util.ClosureCleaner$.clean(ClosureCleaner.scala:158)
at org.apache.spark.SparkContext.clean(SparkContext.scala:1435)
at org.apache.spark.streaming.dstream.DStream.map(DStream.scala:438)
at org.apache.spark.streaming.api.java.JavaDStreamLike$class.map(JavaDStreamLike.scala:140)
at org.apache.spark.streaming.api.java.JavaPairDStream.map(JavaPairDStream.scala:46)
Run Code Online (Sandbox Code Playgroud) python ×4
apache-spark ×3
graph ×2
scala ×2
apache-kafka ×1
coordinates ×1
dataframe ×1
debian ×1
git ×1
graph-layout ×1
gzip ×1
hadoop ×1
installation ×1
java ×1
linux ×1
package ×1
pandas ×1
plot ×1
r ×1
ssh ×1
string ×1
suffix ×1
unix ×1