按pandas数据框中的列表项分组?

时间:2018-02-26 19:24:50

标签: python pandas

我的数据结构设置如下: `

"id":"12345",
"key":"XYZ-123"
"fields":{
    "labels":[
        "label1",
        "label2",
        "label3"
     ]
 },
"id":"67890",
"key":"ABS-789"
"fields":{
    "labels":[
        "label1",
        "label2",
     ]
 }

`

我正在使用pandas将它们放入数据框中,我需要做的是获取具有特定标签的条目数。使用上面的代码,我的理想输出将是 label1: 2 label2: 2 label3: 1 我怎样才能做到这一点?提前致谢。 编辑 - 我尝试过的一件事是进一步展平数据框,以便将列输出为label_1,label_2,label_3等。但是,列之间存在重复数据。

1 个答案:

答案 0 :(得分:0)

这是通过import CoreBluetooth import libdispatch class CentralManager(object): def __init__(self): central_manager = CoreBluetooth.CBCentralManager.alloc() dispatch_queue = libdispatch.dispatch_queue_create('<queue name>', None) central_manager.initWithDelegate_queue_options_(delegate, dispatch_queue, None) def do_the_things(args): # scan, connect, send messages, w/e class EventLoopThread(threading.Thread): def __init__(self): super(EventLoopThread, self).__init__() self.setDaemon(True) self.should_stop = False def run(self): logging.info('Starting event loop on background thread') AppHelper.runConsoleEventLoop(installInterrupt=True) def stop(self): logging.info('Stop the event loop') AppHelper.stopEventLoop() event_loop_thread = EventLoopThread() event_loop_thread.start() central_device = BLECentralDevice(service_uuid_list) central_device.do_the_things('woo hoo') event_loop_thread.stop() 的一种方式。我的假设是你从一个字典列表开始,如下所定义。

collections.Counter