小编scl*_*ee1的帖子

使序列数字列名称前缀为字母

我想在我的数据集中添加标签.但是,问题是我的数据集中有这么多列,因此手动添加标签很费力.

我有33列,包括label末尾的列,如下所示.

features <- c("f1","f2","f3","f4","f5","f6","f7","f8","f9","f10",
              "f11","f12","f13","f14","f15","f16","f17","f18","f19","f20",
              "f21","f22","f23","f24","f25","f26","f27","f28","f29","f30",
              "f31","f32","label")
colnames(urc_training_norm) <- features
Run Code Online (Sandbox Code Playgroud)

如您所见,手动键入每列很烦人地添加我想要的列名称.

有没有更好的方法来生成这些名称?

r

5
推荐指数
3
解决办法
4413
查看次数

dist() 的复杂度是多少?

dist在 R 中使用了该函数,我想知道它的时间复杂度。

我知道层次聚类有N^2*logN时间复杂度。层次聚类由两部分组成,R中代码如下:

> d <- dist(as.matrix(mtcars))   # find distance matrix 
> hc <- hclust(d)                # apply hirarchical clustering 
> plot(hc)                       # plot the dendrogram
Run Code Online (Sandbox Code Playgroud)

在应用层次聚类之前,需要计算距离矩阵。我认为这需要N^2复杂性?

r cluster-analysis euclidean-distance distance-matrix

5
推荐指数
1
解决办法
2302
查看次数

Scala和Spark对已编译jar的兼容性问题

我是Scala和Spark的新手.我在Scala中遇到了一些版本问题错误,所以我尝试更改Scala版本pom.xml以便在群集上运行我的jar文件.最后,我发现制作jar的成功Scala版本是2.11.

但是,我对Scala版本有点好奇,因为当我命令scala -versionbash shell 时,我的集群上安装的Scala版本是2.10.4(事实并非如此2.11).更奇怪的是,当我将scala版本2.11改为2.10in pom.xml以制作相同的scala版本时,jar文件不起作用.并且,它将错误抛出如下.

Exception in thread "main" java.lang.NoSuchMethodError: scala.reflect.api.JavaUniverse.runtimeMirror(Ljava/lang/ClassLoader;)Lscala/reflect/api/JavaMirrors$JavaMirror;
        at com.bistel.scala.App$.main(App.scala:17)
        at com.bistel.scala.App.main(App.scala)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:736)
        at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:185)
        at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:210)
        at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:124)
        at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
Run Code Online (Sandbox Code Playgroud)

当我更改scala版本时2.11,它再次运行良好,并没有抛出任何错误.我想了解与Spark和Scala的兼容性,但上述不匹配的问题让我感到困惑.

任何帮助将不胜感激.

我附上了两个版本pom.xml(第一个是scala版本,2.11另一个是2.10).

下面是一个运作良好的.如图所示,它的scala版本是2.11.

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.bistel.scala</groupId>
  <artifactId>scala-001</artifactId>
  <version>1.0-SNAPSHOT</version>
  <name>${project.artifactId}</name>
  <description>My wonderfull scala app</description>
  <inceptionYear>2015</inceptionYear>
  <licenses>
    <license>
      <name>My License</name>
      <url>http://....</url> …
Run Code Online (Sandbox Code Playgroud)

compatibility scala jar apache-spark

2
推荐指数
1
解决办法
2712
查看次数

使用python3时无法绘制系列类型

我正在使用Python3,当我一直在研究它时,我遇到了问题.我编码如下,我找到了我预期的正确结果.然后我希望将结果看作图表.所以我试图绘制它,但我收到意外错误,表明我需要matplotlib.因为我在第一个代码中导入了matplotlib,所以我不知道解决这个问题.

import matplotlib.pyplot as plt
%matplotlib inline
train.Survived[train['Name']=='Mr'].value_counts()

#Result
0    436
1     81
Name: Survived, dtype: int64
Run Code Online (Sandbox Code Playgroud)

我输入以下代码,将它们视为饼图.

train.Survived[train['Name']=='Mr'].value_counts().plot(kind='pie')
Run Code Online (Sandbox Code Playgroud)

错误消息如下.

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-191-7f60a15206ad> in <module>()
      1 import pandas.plotting
----> 2 train.Survived[train['Name']=='Mr'].value_counts().plot(kind='pie')

/usr/local/lib/python3.6/site-packages/pandas/plotting/_core.py in __call__(self, kind, ax, figsize, use_index, title, grid, legend, style, logx, logy, loglog, xticks, yticks, xlim, ylim, rot, fontsize, colormap, table, yerr, xerr, label, secondary_y, **kwds)
   2739                            colormap=colormap, table=table, yerr=yerr,
   2740                            xerr=xerr, label=label, secondary_y=secondary_y,
-> 2741                            **kwds)
   2742     __call__.__doc__ = plot_series.__doc__
   2743 

/usr/local/lib/python3.6/site-packages/pandas/plotting/_core.py …
Run Code Online (Sandbox Code Playgroud)

python matplotlib pandas

1
推荐指数
1
解决办法
860
查看次数

Flink中sinkfunction的概念及其实现即richsinkfunction

sinkfunction我正在尝试理解和的概念richsinkfunction。然而,我找不到一个详细解释其底层概念的网站,但我找到的是它的 API 文档。

谁能给我简单解释一下flink中的两个函数sinkfunctionand ?richsinkfunction

apache-flink

1
推荐指数
1
解决办法
2079
查看次数

C++:问题矢量STL

我通过调用命名函数来获取除数,getDivisors并返回由容器格式化的值vector<int>.

因为我是C++容器的新手,所以我尝试使用迭代器通过for循环打印我的除数整数.但是,在我看来,这似乎太复杂了.有没有简单的方法在向量中显示存储的整数STL

为什么迭代变量我不明白it is pointer type? Could you explain it more about it? I was confused that the compilers show the error message when I didnotit`

以下是我的简单代码.

#include <iostream>
#include <vector>
using namespace std;

vector<int> getDivisors(int input)
{
    vector<int> divisors;
    divisors.push_back(1); //default
    for (int i = 2; i < input; i++){
        if (input%i == 0){
            divisors.push_back(i);
        }
    }

    return divisors;
}

void solve()
{
    int input;
    cin >> …
Run Code Online (Sandbox Code Playgroud)

c++ stl function vector

0
推荐指数
1
解决办法
96
查看次数

使用char代替'int'最大的好处是什么

下面是我的代码,将大字母转换为小写字母,反之亦然.

#if SOL_2
        char ch;
        char diff = 'A' - 'a';
        //int diff = 'A' - 'a';
        fputs("input your string : ", stdout);

        while ((ch = getchar()) != '\n') {
            if (ch >= 'a' && ch <= 'z') {
                ch += diff;
            }
            else if (ch >= 'A' && ch <= 'Z') {
                ch -= diff;
            }
            else {}

            printf("%c", ch);
        }
#endif
Run Code Online (Sandbox Code Playgroud)

上面的代码,而不是char diff = 'A' - 'a',我使用了int = 'A' -'a',结果是相同的.因此,我认为使用字符可以节省内存,因为char是一个字节,但是int是四个字节.我想不出它的其他优点.如果你让我知道它的其他优点,我将不胜感激. …

c

0
推荐指数
1
解决办法
1110
查看次数

空指针发出奇数点问题

我正在使用C语言进行代码练习.

如下代码,

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define _CRT_SECURE_NO_WARNINGS

int ACDSort(const void *p1, const void *p2);
int Compare(const void *pKey, const void *pValue);
int main(void)
{
    char * strAry[4] = {"Hardware","Cookie","Boy","Power"};
    char * destStr = "Cookie";

    //qsort((void*)strAry, sizeof(strAry) / sizeof(char*), sizeof(char*), ACDSort);

    char **ptrAdr = (char**)bsearch((void*)destStr, strAry, sizeof(strAry) / sizeof(char*), sizeof(char*), Compare);

    printf("%s\n", *ptrAdr);
}

int Compare(const void *pKey, const void *pValue) {
    char *key = ((char*)pKey);
    char *value = *((char**)pValue);
    return strcmp(key, value);
}

int ACDSort(const void *p1, …
Run Code Online (Sandbox Code Playgroud)

c bsearch

0
推荐指数
1
解决办法
107
查看次数

删除Java中重复项的最快速有效的方法

我想删除数据中的重复值.我知道它经常在stackoverflow中被观察到的问题,但我的问题有点不同,因为现在我正在处理非常大的数据.因此,我必须在代码中考虑最多的执行时间.

如下面的代码片段,我做了一个简单的代码来删除重复的值.

// Suppose that the dataset is very huge so that
// multi-node resources should be necessary.    
String[] data = new String[10_000_000];

HashMap<String, String> uniqueItems = new HashMap<>();

for (int i = 0; i < data.length; i++) {
    if (uniqueItems.containsKey(data[i])) {
        uniqueItems.remove(data[i]);
        uniqueItems.put(data[i], "inserted");
    } else {
        uniqueItems.put(data[i], "inserted");
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,我不喜欢它,因为我认为其他更好的数据结构或不同的算法可以有效地删除重复的比我的代码.

所以我想寻找更好的方法来在数据很大时快速删除重复的值.
如果您能让我知道删除重复值的最快方法,我将不胜感激.

而且,我想知道重复值的数量是否会影响性能.我的意思是如果重复值是原始数据的50%,那么最佳算法和数据结构的选择将会改变吗?如果是这样,我想找到一种在一般情况下可以取得良好性能的方法.

java hashmap hashset

0
推荐指数
1
解决办法
1680
查看次数