def read_bidders(filename):
    with open('clean_%s' % filename, 'wb') as cbfile:
        fieldnames = [
            'bidder_id', 'pmt_type', 'pmt_account', 'addr_1', 'addr_2'
        ]
        if 'train' in filename:
            fieldnames.append('outcome')
        writer = csv.DictWriter(cbfile, fieldnames=fieldnames)
        writer.writeheader()
        with open(filename, 'rb') as bidsfile:
            reader = csv.reader(bidsfile, delimiter=',', quotechar='|')
            skip(reader, 1)
            for row in reader:
                b = Bidder(row[0], row[1], row[2],
                           row[3] if len(row) > 3 else None)
                bidders[b.bidder_id] = b
                mrow = {
                    'bidder_id': b.bidder_id,
                    'pmt_type': b.get_payment_type(),
                    'pmt_account': b.get_payment_acct(),
                    'addr_1': b.get_addr_1(),
                    'addr_2': b.get_addr_2(),
                }
                if 'train' in filename:
                    mrow['outcome'] = b.outcome
                writer.writerow(mrow)
def read_bidders(filename):
    with open(filename, 'rb') as bidsfile:
        reader = csv.reader(bidsfile, delimiter=',', quotechar='|')
        skip(reader, 1)
        for row in reader:
            b = Bidder(row[0], row[1], row[2],
                       row[3] if len(row) > 3 else None)
            #if b.bidder_id in ['f5b2bbad20d1d7ded3ed960393bec0f40u6hn', 'e90e4701234b13b7a233a86967436806wqqw4']:
            #    b.outcome = 1

            add_bidder(b)

            shared.addr_1[b.get_addr_1()].add(b.bidder_id)
            shared.addr_2[b.get_addr_2()].add(b.bidder_id)

            shared.pmt_type[b.get_payment_type()].add(b.bidder_id)
            shared.pmt_accnt[b.get_payment_acct()].add(b.bidder_id)

        print "%s data done" % filename
        rc = sum([1 for i in shared.bidders.values() if utils.is_robot(i)])
        hc = sum([1 for i in shared.bidders.values() if utils.is_human(i)])
        uc = sum([1 for i in shared.bidders.values() if i.outcome is None])
        print "Found %s robots, %s humans, %s unknown" % (rc, hc, uc)
Beispiel #3
0
def read_bidders(filename):
    with open('clean_%s' % filename, 'wb') as cbfile:
        fieldnames = ['bidder_id', 'pmt_type', 'pmt_account', 'addr_1', 'addr_2']
        if 'train' in filename:
            fieldnames.append('outcome')
        writer = csv.DictWriter(cbfile, fieldnames=fieldnames)
        writer.writeheader()
        with open(filename, 'rb') as bidsfile:
            reader = csv.reader(bidsfile,  delimiter=',',  quotechar='|')
            skip(reader, 1)
            for row in reader:
                b = Bidder(row[0], row[1], row[2], row[3] if len(row) > 3 else None)
                bidders[b.bidder_id] = b
                mrow = {
                    'bidder_id': b.bidder_id,
                    'pmt_type': b.get_payment_type(),
                    'pmt_account': b.get_payment_acct(),
                    'addr_1': b.get_addr_1(),
                    'addr_2': b.get_addr_2(),
                }
                if 'train' in filename:
                    mrow['outcome'] = b.outcome
                writer.writerow(mrow)