小编Ste*_*ski的帖子

查找与不规则间隔数据最接近特定时间的每日观察

我有一个python数据帧

Out[110]:
Time
2014-09-19 21:59:14    55.975
2014-09-19 21:56:08    55.925
2014-09-19 21:53:05    55.950
2014-09-19 21:50:29    55.950
2014-09-19 21:50:03    55.925
2014-09-19 21:47:00    56.150
2014-09-19 21:53:57    56.225
2014-09-19 21:40:51    56.225
2014-09-19 21:37:50    56.300
2014-09-19 21:34:46    56.300
2014-09-19 21:31:41    56.350
2014-09-19 21:30:08    56.500
2014-09-19 21:28:39    56.375
2014-09-19 21:25:34    56.350
2014-09-19 21:22:32    56.400
2014-09-19 21:19:27    56.325
2014-09-19 21:16:25    56.325
2014-09-19 21:13:21    56.350
2014-09-19 21:10:18    56.425
2014-09-19 21:07:13    56.475
Name: Spread, dtype: float64
Run Code Online (Sandbox Code Playgroud)

它延续了很长一段时间(几个月到几年),所以每天观察很多.我想做的是我每天想要检索最接近特定时间的时间序列观察,比如16:00.

到目前为止,我的做法是

eodsearch = pd.DataFrame(df['Date'] + datetime.timedelta(hours=16))

eod = df.iloc[df.index.get_loc(eodsearch['Date'] ,method='nearest')]
Run Code Online (Sandbox Code Playgroud)

目前给我一个错误

"Cannot …
Run Code Online (Sandbox Code Playgroud)

python time pandas

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

强调方法意味着什么?

我是Python语言的新手,在执行以下操作时遇到了这种情况:

help(list)
Run Code Online (Sandbox Code Playgroud)

这是我遇到的:

__add__(...)
|      x.__add__(y) <==> x+y
|  
|  __contains__(...)
|      x.__contains__(y) <==> y in x
|  
|  __delitem__(...)
|      x.__delitem__(y) <==> del x[y]
Run Code Online (Sandbox Code Playgroud)

关于这些,有哪些下划线?因为当你正常使用一种方法时我们并没有使用它们(据我所知),我很难理解为什么他们会花时间在文档中用下划线写出来.

python double-underscore

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

Python中更快的套接字

我有一个用Python编写的服务器客户端,它通过LAN运行.该算法的某些部分使用套接字读取密集,并且执行速度比使用C++编写的几乎相同 3-6倍.有什么解决方案可以让Python套接字读取更快?

我实现了一些简单的缓冲,我使用套接字的类看起来像这样:

import socket
import struct

class Sock():
    def __init__(self):
        self.s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        self.recv_buf = b''
        self.send_buf = b''

    def connect(self):
        self.s.connect(('127.0.0.1', 6666))

    def close(self):
        self.s.close()

    def recv(self, lngth):
        while len(self.recv_buf) < lngth:
                self.recv_buf += self.s.recv(lngth - len(self.recv_buf))

        res = self.recv_buf[-lngth:]
        self.recv_buf = self.recv_buf[:-lngth]
        return res

    def next_int(self):
        return struct.unpack("i", self.recv(4))[0]

    def next_float(self):
        return struct.unpack("f", self.recv(4))[0]

    def write_int(self, i):
        self.send_buf += struct.pack('i', i)

    def write_float(self, f):
        self.send_buf += struct.pack('f', f)

    def flush(self):
        self.s.sendall(self.send_buf)
        self.send_buf = b''
Run Code Online (Sandbox Code Playgroud)

PS:剖析也表明大部分时间花在阅读套接字上. …

python sockets performance python-3.x

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

我应该如何建立一个列表并将其返回到clojure中?

我还在学习这种外星人的功能范式......

我将如何在Clojure中以函数方式编写以下代码?假设这个缺失的部分在别处定义,并且在评论中描述.这是我熟悉的Python.

usernames = []
# just the usernames of all the connections I want to open.
cancelfunctions = {}
# this global contains anonymous functions to cancel connections, keyed by username

def cancelAll():
    for cancel in cancelfunctions.values():
        cancel()

def reopenAll():
    cancelfunctions = {}
    for name in usernames:
        # should return a function to close the connection and put it in the dict.
        cancelfunctions[name] = openConnection()
Run Code Online (Sandbox Code Playgroud)

所有我真正需要知道的是如何构建一个新的回调函数,就像在reopenAll函数中一样,但是我在这里包含了一些更多的上下文,因为我有可能犯下某种功能范式的暴行,你最有可能可能想要修复整个程序.:)

porting functional-programming clojure

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

检查python中的字符串中是否存在字母

如何检查字符串中是否存在字母“N”。例子:

flag = False
if string contains N:
   flag = True
Run Code Online (Sandbox Code Playgroud)

所以flag = True如果字符串是"CNDDDNTD"flag = False如果字符串是"CCGGTTT"。我认为 re.search 会起作用,但不确定要使用的选项。

python

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

Pandas数据帧有一个额外的"层"

假设您有以下数据帧:

import pandas as pd
import numpy as np

df = pd.DataFrame(np.nan,columns=['A','B','C'],index=[0,1,2])
Run Code Online (Sandbox Code Playgroud)

假设我想在这个pandas数据帧之上添加一个额外的"层",这样列A,第0行将具有其值,列B,第0行将具有不同的值,列C行0将具有某些内容,列A行1等等.就像现有的数据框一样.

是否可以添加其他图层?如何访问这些图层?这是否有效,即我应该只使用一个单独的数据框?并且可以通过访问各个层来将这些多个层保存为csv,还是有一个函数可以将它们分解为同一工作簿中的不同工作表?

python pandas

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

按短号拆分列表

我正在使用NumPy在图表上查找交叉点,但isClose每个交点返回多个值

所以,我打算尝试找到他们的平均值.但首先,我想隔离相似的值.这也是我觉得有用的技巧.

我有一个交叉点的x值列表idx,看起来像这样

[-8.67735471 -8.63727455 -8.59719439 -5.5511022  -5.51102204 -5.47094188
 -5.43086172 -2.4248497  -2.38476954 -2.34468938 -2.30460922  0.74148297
  0.78156313  0.82164329  3.86773547  3.90781563  3.94789579  3.98797595
  7.03406814  7.0741483   7.11422846]
Run Code Online (Sandbox Code Playgroud)

我想把它分成每个由相似数字组成的列表.

这是我到目前为止:

n = 0
for i in range(len(idx)):
    try:
        if (idx[n]-idx[n-1])<0.5:
            sdx.append(idx[n-1])
        else:
            print(sdx)
            sdx = []
    except:
        sdx.append(idx[n-1])
    n = n+1
Run Code Online (Sandbox Code Playgroud)

它在很大程度上起作用,但它会忘记一些数字:

[-8.6773547094188377, -8.6372745490981959]
[-5.5511022044088181, -5.5110220440881763, -5.4709418837675354]
[-2.4248496993987976, -2.3847695390781567, -2.3446893787575149]
[0.7414829659318638, 0.78156312625250379]
[3.8677354709418825, 3.9078156312625243, 3.9478957915831661]
Run Code Online (Sandbox Code Playgroud)

这可能是一种更有效的方法,有人知道吗?

python split numpy python-3.x

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

为什么在PyQt字符串中为GUI元素使用&符号(&)?

我已经阅读了几篇PyQt教程,他们在Strings中使用了一个&符号(&)来标记按钮.例如:

self.submitButton = QPushButton("&Submit")
Run Code Online (Sandbox Code Playgroud)

我搜索了一些解释,但有一个问题是,常见的搜索引擎认为它们非常聪明并且忽略了&字符,这很烦人.当我在它周围添加引号时,它只会让我找到更少的结果而没有,这解释了有关奇怪的'&'字符的任何内容.

  • 它是非常基本的东西,这就是没有人解释它的原因吗?
  • 或者PyQt具体吗?
  • 为什么我会添加一个不必要的角色呢?
  • 它不会不必要地弄乱String吗?
  • 它对String的处理有什么影响?

我也试过在python控制台:

a = "&abc"
b = "abc"
a == b
Run Code Online (Sandbox Code Playgroud)

返回false.然后我尝试将它作为print函数的参数:

print(a)
print(b)
Run Code Online (Sandbox Code Playgroud)

哪个简单的打印:

&abc
abc
Run Code Online (Sandbox Code Playgroud)

所以我仍然不知道该怎么做.

python string label pyqt button

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

Python命令中的'r'

这可能在某个时候回答了某个地方,但我看到的标题没有连接,所以这里就是这样.我看过读过的python命令os.listdir(r".\bootstrapper").什么是'r'做什么?

干杯...

python

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

Python没有明显的原因停止写入文件

这真的很奇怪.我有一个temp.txt具有以下格式的文件:

   1        1:1        1:1         *0.9    0      0      0.1    0      0    
   2        1:1        1:1         *1      0      0      0      0      0    
   3        1:1        1:1         *1      0      0      0      0      0    
   4        1:1        2:2      +   0.2   *0.7    0.1    0      0      0    
   5        1:1        1:1         *1      0      0      0      0      0    
   6        1:1        1:1         *0.9    0      0      0.1    0      0    
   7        1:1        1:1         *1      0      0      0      0      0    
   8        1:1        1:1         *1      0      0      0      0      0    
   .        .          .           . …
Run Code Online (Sandbox Code Playgroud)

python file

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