小编Mar*_* MD的帖子

如何使用python pandas处理传入的实时数据

使用pandas处理实时传入数据的最佳/ pythonic方法是哪种?

每隔几秒钟我就会收到以下格式的数据点:

{'time' :'2013-01-01 00:00:00', 'stock' : 'BLAH',
 'high' : 4.0, 'low' : 3.0, 'open' : 2.0, 'close' : 1.0}
Run Code Online (Sandbox Code Playgroud)

我想将它附加到现有的DataFrame,然后对其进行一些分析.

问题是,只是使用DataFrame.append追加行可能导致所有复制的性能问题.

我试过的事情:

一些人建议预先分配一个大的DataFrame并在数据进入时更新它:

In [1]: index = pd.DatetimeIndex(start='2013-01-01 00:00:00', freq='S', periods=5)

In [2]: columns = ['high', 'low', 'open', 'close']

In [3]: df = pd.DataFrame(index=t, columns=columns)

In [4]: df
Out[4]: 
                    high  low open close
2013-01-01 00:00:00  NaN  NaN  NaN   NaN
2013-01-01 00:00:01  NaN  NaN  NaN   NaN
2013-01-01 00:00:02  NaN  NaN  NaN   NaN
2013-01-01 00:00:03  NaN  NaN  NaN   NaN
2013-01-01 …
Run Code Online (Sandbox Code Playgroud)

python pandas

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

返回0的基本原理作为C/C++中的默认值

有没有理由将零用作"默认"函数返回值?我注意到stdlib和几乎所有其他地方的几个函数,当没有返回正确的数字(例如pow(),strcpy())或错误(负数)时,只返回零.

在看到几个用否定逻辑进行的测试后,我感到很好奇.很混乱.

为什么不返回1,或0xff,或任何正数?

c c++

15
推荐指数
3
解决办法
6269
查看次数

pty多路复用器

我正在尝试多路访问linux上的串口.我正在使用只有一个串口的嵌入式系统,如果有多个进程与它通信就很不错.

常见用例是:

  • 一个主程序运行测试(发送命令和接收输出);
  • 另一个记录所有串口活动;
  • 在测试期间发生一些错误之后,用户终端打开以发送附加命令和/或执行后期分析.

首先,我创建了一个简单的python脚本来打开n个伪终端对(加上串口)并使用poll语句将输入/输出定向到正确的位置:

# Removed boiler plate and error checking for clarity

##### Serial port setup
ttyS = serial.Serial(device, baudrate, width, parity, stopbits, 1, xon, rtc)
ttyS.setTimeout(0) # Non-blocking

##### PTYs setup
pts = []
for n in range(number_of_slave_terminals):
    master, slave = os.openpty()
    # Print slave names so others know where to connect
    print >>sys.stderr, 'MUX > fd: %d pty: %s' % (slave, os.ttyname(slave))
    pts.append(master)

##### Poller setup
poller = select.poll()
poller.register(ttyS.fd, select.POLLIN | select.POLLPRI)
for pt …
Run Code Online (Sandbox Code Playgroud)

python linux serial-port pty

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

附加到列表实例的对象显示在该列表的不同实例中

我正在编写这段代码作为面向对象编程的练习.

在这里,我试图将房屋定义为房间列表,并将每个房间定义为设备列表(例如灯具).

首先,我创建了所有对象,并将两个房间附加到房屋,并为每个房间添加了不同的设备.很基本的.

问题是,似乎设备被附加到两个房间.这是为什么?

代码:

#! /usr/bin/python

class House:
        def __init__(self, rooms = list()):
                self.rooms = rooms
                print('house created')


class Room:
        def __init__(self, name = 'a room', devs = list()):
            self.name = name
            self.devs = devs
            print('room ' + self.name + ' created')


class Device:
        def __init__(self, name = 'a device'):
                self.name = name
                print('device ' + self.name + ' created')


def main():
        #1
        h = House()
        r1 = Room(name = 'R1')
        r2 = Room(name = 'R2')
        d1 = Device(name …
Run Code Online (Sandbox Code Playgroud)

python arguments default mutable

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

标签 统计

python ×3

arguments ×1

c ×1

c++ ×1

default ×1

linux ×1

mutable ×1

pandas ×1

pty ×1

serial-port ×1