小编COS*_*STA的帖子

将Pandas DataFrame转换为字典

我有一个包含四列的DataFrame.我想将此DataFrame转换为python字典.我想要第一列keys的元素和同一行中其他列的元素values.

数据帧:

    ID   A   B   C
0   p    1   3   2
1   q    4   3   2
2   r    4   0   9  
Run Code Online (Sandbox Code Playgroud)

输出应该是这样的:

字典:

{'p': [1,3,2], 'q': [4,3,2], 'r': [4,0,9]}
Run Code Online (Sandbox Code Playgroud)

python dictionary dataframe pandas

126
推荐指数
6
解决办法
17万
查看次数

如何从RDD [PYSPARK]中删除重复值

我有下表作为RDD:

Key Value
1    y
1    y
1    y
1    n
1    n
2    y
2    n
2    n
Run Code Online (Sandbox Code Playgroud)

我想从中删除所有重复项Value.

输出应该是这样的:

Key Value
1    y
1    n
2    y
2    n
Run Code Online (Sandbox Code Playgroud)

在pyspark中工作时,输出应该是键值对列表,如下所示:

[(u'1',u'n'),(u'2',u'n')]
Run Code Online (Sandbox Code Playgroud)

我不知道如何在for这里应用循环.在普通的Python程序中,它会非常简单.

我想知道是否有pyspark相同的功能.

python apache-spark rdd

13
推荐指数
2
解决办法
2万
查看次数

选择列的某些元素并在大文件上重复查找它们的最大值.使用PYTHON

我有一个220万行的大文件.

Value Label
4       1
6       1
2       2
6       2
3       2
5       3
8       3
7       3
1       4
5       4
2       5
4       5 
1       5
Run Code Online (Sandbox Code Playgroud)

我想知道获得以下输出的最快方法,其中'Max'存储每个标签中的最大值

Label   Max
  1      6
  2      6
  3      8
  4      5
  5      4
Run Code Online (Sandbox Code Playgroud)

我在python中使用'for'和'while'循环实现了一个普通的逻辑,但这需要几个小时.我希望大熊猫会有一些东西可以解决这个问题.

python pandas

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

如何处理字符串特征分类?

我正在研究一个广告点击推荐系统,在该系统中,我必须预测用户是否会点击广告。我总共具有98个功能,同时具有USER功能和ADVERTISEMENT功能。对于预测而言非常重要的某些功能具有这样的字符串值。

**FEATURE**
Inakdtive Kunmden
Stammkfunden
Stammkdunden
Stammkfunden
guteg Quartialskunden
gutes Quartialskunden
guteg Quartialskunden
gutes Quartialskunden
Run Code Online (Sandbox Code Playgroud)

整个数据列中有14种不同的字符串值。我的模型无法将字符串值作为输入,因此我必须将它们转换为分类int值。我不知道如何执行此操作并使这些功能有用。我正在使用K-MEANS聚类和随机森林算法。

machine-learning k-means random-forest scikit-learn

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

Elixir:Genserver.call没有初始化handle_call

我正在实现Gossip Algorithm其中多个演员同时传播八卦的同时.当每个演员都听了八次Gossip时,系统停止.

现在,我有一个场景,我在发送八卦之前检查收件人演员的收听计数.如果监听计数已经是10,则不会将八卦发送给收件人.我这样做是使用同步调用来获取监听计数.

def get_message(server, msg) do
    GenServer.call(server, {:get_message, msg})
end

def handle_call({:get_message, msg}, _from, state) do
    listen_count = hd(state) 
    {:reply, listen_count, state}
end
Run Code Online (Sandbox Code Playgroud)

该程序在启动时运行良好但经过一段时间Genserver.call停止时出现超时错误,如下所示.经过一些调试,我意识到它Genserver.call变得休眠并且无法启动相应的handle_call方法.使用同步调用时是否需要此行为?由于所有参与者都是独立的,因此不应该在Genserver.call不等待彼此响应的情况下独立运行方法.

02:28:05.634 [error] GenServer #PID<0.81.0> terminating
    ** (stop) exited in: GenServer.call(#PID<0.79.0>, {:get_message, []}, 5000)
    ** (EXIT) time out
    (elixir) lib/gen_server.ex:774: GenServer.call/3
Run Code Online (Sandbox Code Playgroud)

编辑:以下代码可以在iex shell中运行时重现错误.

defmodule RumourActor do
use GenServer

def start_link(opts) do
    {:ok, pid} = GenServer.start_link(__MODULE__,opts)
    {pid}
end

def set_message(server, msg, recipient) do      
    GenServer.cast(server, {:set_message, msg, server, …
Run Code Online (Sandbox Code Playgroud)

erlang elixir erlang-otp gen-server gossip

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

按行索引拆分Spark数据帧

我想按行顺序拆分数据框.如果有100行,则所需的分割成4个相等的数据帧应该有指数0-24,25-49,50-74,和75-99,分别.

唯一可用的预定义功能是randomSplit.但是randomSplit在拆分之前随机化数据.我想到的另一种方法是使用count缩减操作找到数据计数,然后继续使用数据提取 take但是它非常昂贵.在保持相同顺序的同时,还有其他方法可以实现上述目标吗?

python apache-spark pyspark

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