小编fla*_*nco的帖子

如何在Python中定义全局函数?

有没有办法从一个类(或从另一个函数中,事实上)中定义一个全局函数?类似于定义全局变量的东西.

python

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

如何在R Shiny中对齐一组checkboxGroupInput

我创建了一组checkboxGroupInput使用下面的代码,但它没有正确显示.它看起来像这样: 在此输入图像描述

任何想法如何强制在Shiny中正确对齐?

ui.R

uiOutput(outputId = "numSelector")
Run Code Online (Sandbox Code Playgroud)

server.R

        output$numSelector <- renderUI({
        out <- checkboxGroupInput(
            inputId = "numSelector",
            label   = "Select the numbers to filter on:",
            choices = selectRange(input$dataName),
            inline = TRUE
        )
        return(out)
    })
Run Code Online (Sandbox Code Playgroud)

r shiny

10
推荐指数
2
解决办法
6978
查看次数

在R,RStudio中同时显示和保存绘图

我需要将绘图保存为.png并同时显示绘图而不重复代码.有一种优雅的方式吗?在RStudio for MAC上工作.

我可以让它像贝娄那样工作,但我不喜欢它.

#Step1: save the plot
png("myplot.png")
#plot code
dev.off()

#Step2: to display the plot
#plot code (again!) to display it in RStudio
Run Code Online (Sandbox Code Playgroud)

干杯,IM

r rstudio

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

PyCharm - 视图以分离模式运行

我知道这些问题与PyCharm有关,但Python社区要大得多,有些人可能会使用PyCharm,请不要标记问题.

我正在为服务器和客户端运行Python,zmq代码.我希望以并排模式(分割模式)看到运行(控制台消息),以便更好地分析两者之间的交互.它在"运行"和"终端"之间具有"分离"模式,但在"运行"类别中找不到分割模式.您是否能够以并排模式查看多个运行?是否有任何插件或其他方式使其工作?

谢谢!

python pycharm

6
推荐指数
2
解决办法
5389
查看次数

Python 中的简单客户端/服务器 ZMQ,可为每个请求发送多行

这是我第一次接触 Python 下的 ZMQ,我希望服务器在收到来自客户端的请求时发送多行。我在服务器端由 ZMQ 提供的示例中添加的代码是:

with open("test.txt", 'r') as f:
    for line in f:
        socket.send_string(line.rstrip("\n"))
Run Code Online (Sandbox Code Playgroud)

问题是如何让服务器发送所有行,或者如何让客户端在服务器完成发送所有行之前不发送请求 test.txt

客户

import zmq
context = zmq.Context()
print("Connecting to hello world server")
socket = context.socket(zmq.REQ)
socket.connect("tcp://localhost:5555")
for request in range(10):
    print("Sending request %s" % request)
    socket.send(b"Hello")
    message = socket.recv()
    print("Received reply %s [ %s ]" % (request, message))
Run Code Online (Sandbox Code Playgroud)

服务器

import time
import zmq

context = zmq.Context()
socket = context.socket(zmq.REP)
socket.bind("tcp://*:5555")

while True:
    #  Wait for next request from client
    message = socket.recv()
    print("Received …
Run Code Online (Sandbox Code Playgroud)

python zeromq pyzmq

5
推荐指数
2
解决办法
8318
查看次数

如何计算属于 Python 列表一部分的集合的出现次数?

尝试实现 apriori 算法并使其达到可以提取所有事务中一起出现的子集的程度。

这就是我所拥有的:

subsets = [set(['Breakfast & Brunch', 'Restaurants']), set(['American (Traditional)', 'Breakfast & Brunch']), set(['American (Traditional)', 'Restaurants']), set(['American (Traditional)', 'Breakfast & Brunch']), set(['Breakfast & Brunch', 'Restaurants']), set(['American (Traditional)', 'Restaurants'])]
Run Code Online (Sandbox Code Playgroud)

例如set(['Breakfast & Brunch', 'Restaurants'])出现两次,我需要跟踪出现的次数以及相应的模式。

我尝试使用:

from collections import Counter

support_set = Counter()
# some code that generated the list above

support_set.update(subsets)
Run Code Online (Sandbox Code Playgroud)

但它会产生这个错误:

  supported = itemsets_support(transactions, candidates)
  File "apriori.py", line 77, in itemsets_support
    support_set.update(subsets)
  File"/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/collections.py", line 567, in update
    self[elem] = self_get(elem, 0) + 1
TypeError: unhashable type: 'set' …
Run Code Online (Sandbox Code Playgroud)

python data-mining

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

使用Python中的ZMQ在客户端/服务器配置中进行嗅探器/监视器

我通过ZeroMQ实现了一个客户端/服务器,我想添加一个嗅探器/监视器来捕获两者之间的通信.

              client <---------> server
              (REQ)       |         (REP)
                          | 
                          |
                          v
                        sniffer  <-this is what I want to add
Run Code Online (Sandbox Code Playgroud)

如果客户端/服务器通过套接字5555进行通信,那么我怎么能添加一个嗅探器来监听同一个套接字呢?有没有办法区分哪个消息来自客户端,哪个消息来自服务器?有人可以分享经验吗?

根据Jan的回答编辑

配置将变为:

client [REQ]----->[ROUTER:4444] monitor [DEALER]------->[REP:5555] server
                              [PUB:7777]
                                  ^
                                  |
                                  |
                                  |
                                  | 
                                [SUB] 
                            monitorclient(sniffer)  <-this is what I want to add
Run Code Online (Sandbox Code Playgroud)

箭头显示连接方向(前往绑定端口).

消息流动:

  • client- > monitor- > server- > monitor- >client
  • 而且monitor- >monitorclient

有一个更好的图片在这里.

python sockets zeromq pyzmq

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

从文件中读取行作为移位寄存器,在Python中使用两个单元格

我需要以这样的方式读取文件的行,这将作为具有两个单元的移位寄存器.例如:

with open("filename", 'r') as file:

 --first iteration--
 present = line1
 next  = line2
    do something

 --second iteration--
 present = line2
 next = line3
   do something

 --third iteration--
 present = line3
 next = line 4
    do someting

 and so on....
Run Code Online (Sandbox Code Playgroud)

它可以完成,open(file, 'r')但不能保证文件将被关闭,因为脚本可能会因为在最后一次迭代之前"做某事"而停止.

有什么优雅的方式吗?

python

3
推荐指数
2
解决办法
106
查看次数

检查文本中的字符串(单词)列表(短语)

除了循环之外,是否有一种优雅的方法来测试是否在短语中找到属于列表的单词?我正在考虑像列表理解其中一个apply函数.例如:

words <- c("word1", "word2", "word3")
text <- "This is a text made off of word1 and possibly word2 and so on."
Run Code Online (Sandbox Code Playgroud)

如果任何单词以文本形式建立并且建立了哪个单词,则输出应返回TRUE.

r

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

什么是libXinerama?

有人可以用通俗易懂的方式解释它吗?我得到了一些需要libXinerama的安装。最终我使它工作了,但我想知道它的作用以及它如何与系统的其余部分进行交互。

谢谢,

linux redhat linux-kernel

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

如何为散景数据表中的行和/或单元格着色?

从开始Initial table,我需要突出显示(color)元素,如表示例之一所示Ex. 1, Ex. 2, Ex. 3

在此处输入图片说明

任何的想法?

bokeh rbokeh bokehjs

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

如何在终端窗口中打印/显示telnet会话的输出(Python)

有人可以帮助理解终端窗口中的打印是如何工作的吗?这是一个测试脚本

test_script.py

import telnetlib
HOST = "10.1.1.151"
tn = telnetlib.Telnet(HOST)
tn.open(HOST)
test_var = ["test"]
print test_var
tn_read =  tn.read_very_eager()
print tn_read
Run Code Online (Sandbox Code Playgroud)

脚本从终端运行时的输出:

$ python test_script.py
  ['test']
Run Code Online (Sandbox Code Playgroud)

tn_read 应该是类似"用户名:"但它不会打印在终端窗口中.

如果我从解释器运行它,我会得到预期的结果:

 >>> tn.read_very_eager()
 '\n\rUser Name : '
Run Code Online (Sandbox Code Playgroud)

从终端调用脚本时,为什么或需要做什么来获得以下输出?

 $ python test_script.py
  ['test']
  User Name :  
Run Code Online (Sandbox Code Playgroud)

python terminal python-2.7

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

如何通过map/apply在pandas数据框架上使用lambda函数,其中lambda为每列采用不同的值

我们的想法是根据每列特定的值以最快的方式转换数据帧.为简单起见,这里是一个示例,其中列的每个元素与它所属的列的平均值进行比较,如果大于mean(列)则替换为0,否则替换为1.

In [26]: df = pd.DataFrame(np.array([[1, 2, 3], [4, 5, 6]]))                                                                                                                                                               

In [27]: df                                                                                                                                                                                                                
Out[27]: 
   0  1  2
0  1  2  3
1  4  5  6

In [28]: df.mean().values.tolist()                                                                                                                                                                                         
Out[28]: [2.5, 3.5, 4.5]
Run Code Online (Sandbox Code Playgroud)

Snippet bellow,它不是真正的代码,而是更多的例证所需的行为.我使用的apply方法,但它可以是最快的工作.

In [29]: f = lambda x: 0 if x < means else 1                                                                                                                                                                               

In [30]: df.apply(f)

In [27]: df                                                                                                                                                                                                                
Out[27]: 
   0  1  2
0  0  0  0
1  1  1  1 
Run Code Online (Sandbox Code Playgroud)

这是一个玩具示例,但解决方案必须应用于大数据框架,因此,它必须快速.

干杯!

python numpy pandas

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