In [1]:
import pandas as pd
import numpy as np
In [2]:
pd.set_option("display.max_columns", 100)
In [3]:
# import mine data
mines_df = pd.read_csv("Mines.txt", sep="|", quotechar='"')
address_df = pd.read_csv("AddressOfRecord.txt", sep="|", quotechar='"')
yearlyprod_df = pd.read_csv("MinesProdYearly.txt", sep="|", quotechar='"')
/Library/Python/2.7/site-packages/pandas-0.14.1_425_g15b8454-py2.7-macosx-10.9-intel.egg/pandas/io/parsers.py:1141: DtypeWarning: Columns (13,14) have mixed types. Specify dtype option on import or set low_memory=False.
data = self._reader.read(nrows)
In [4]:
# import support data
quartz_df = pd.read_csv("QuartzSamples.txt", sep="|", quotechar='"')
personalhealth_df = pd.read_csv("PersonalHealthSamples.txt", sep="|", quotechar='"')
noise_df = pd.read_csv("NoiseSamples.txt", sep="|", quotechar='"')
coaldust_df = pd.read_csv("CoalDustSamples.txt", sep="|", quotechar='"')
areasamples_df = pd.read_csv("AreaSamples.txt", sep="|", quotechar='"')
/Library/Python/2.7/site-packages/pandas-0.14.1_425_g15b8454-py2.7-macosx-10.9-intel.egg/pandas/io/parsers.py:1141: DtypeWarning: Columns (13) have mixed types. Specify dtype option on import or set low_memory=False.
data = self._reader.read(nrows)
/Library/Python/2.7/site-packages/pandas-0.14.1_425_g15b8454-py2.7-macosx-10.9-intel.egg/pandas/io/parsers.py:1141: DtypeWarning: Columns (4) have mixed types. Specify dtype option on import or set low_memory=False.
data = self._reader.read(nrows)
In [5]:
""" clean mines_df
mines_df columns: [u'MINE_ID', u'CURRENT_MINE_NAME', u'COAL_METAL_IND', u'CURRENT_MINE_TYPE', u'CURRENT_MINE_STATUS',
u'CURRENT_STATUS_DT', u'CURRENT_CONTROLLER_ID', u'CURRENT_CONTROLLER_NAME', u'CURRENT_OPERATOR_ID', u'CURRENT_OPERATOR_NAME',
u'STATE', u'BOM_STATE_CD', u'FIPS_CNTY_CD', u'FIPS_CNTY_NM', u'CONG_DIST_CD', u'COMPANY_TYPE', u'CURRENT_CONTROLLER_BEGIN_DT',
u'DISTRICT', u'OFFICE_CD', u'OFFICE_NAME', u'ASSESS_CTRL_NO', u'PRIMARY_SIC_CD', u'PRIMARY_SIC', u'PRIMARY_SIC_CD_1',
u'PRIMARY_SIC_CD_SFX', u'SECONDARY_SIC_CD', u'SECONDARY_SIC', u'SECONDARY_SIC_CD_1', u'SECONDARY_SIC_CD_SFX',
u'PRIMARY_CANVASS_CD', u'PRIMARY_CANVASS', u'SECONDARY_CANVASS_CD', u'SECONDARY_CANVASS', u'CURRENT_103I', u'CURRENT_103I_DT',
u'PORTABLE_OPERATION', u'PORTABLE_FIPS_ST_CD', u'DAYS_PER_WEEK', u'HOURS_PER_SHIFT', u'PROD_SHIFTS_PER_DAY',
u'MAINT_SHIFTS_PER_DAY', u'NO_EMPLOYEES', u'PART48_TRAINING', u'LONGITUDE', u'LATITUDE', u'AVG_MINE_HEIGHT',
u'MINE_GAS_CATEGORY_CD', u'METHANE_LIBERATION', u'NO_PRODUCING_PITS', u'NO_NONPRODUCING_PITS', u'NO_TAILING_PONDS',
u'PILLAR_RECOVERY_USED', u'HIGHWALL_MINER_USED', u'MULTIPLE_PITS', u'MINERS_REP_IND', u'SAFETY_COMMITTEE_IND',
u'MILES_FROM_OFFICE', u'DIRECTIONS_TO_MINE', u'NEAREST_TOWN']
"""
mines_df_1 = mines_df[['MINE_ID', u'COAL_METAL_IND', u'CURRENT_MINE_TYPE', u'CURRENT_MINE_STATUS', u'CURRENT_CONTROLLER_ID', u'CURRENT_OPERATOR_ID', u'STATE', u'DISTRICT', u'PRIMARY_SIC_CD',
u'PRIMARY_CANVASS_CD', u'OFFICE_CD', u'PORTABLE_OPERATION', u'DAYS_PER_WEEK', u'PART48_TRAINING', u'PILLAR_RECOVERY_USED',
u'HIGHWALL_MINER_USED', u'MULTIPLE_PITS', u'MINERS_REP_IND', u'SAFETY_COMMITTEE_IND', u'MILES_FROM_OFFICE']]
In [6]:
print mines_df.shape, mines_df_1.shape
(85334, 59) (85334, 20)
In [7]:
yearlyprod_df_1 = yearlyprod_df[[u'MINE_ID', u'ANNUAL_HOURS', u'ANNUAL_COAL_PRODUCTION', u'AVG_EMPLOYEE_CNT', u'AVG_EMPLOYEE_HOURS']]
yearlyprod_df_2 = yearlyprod_df_1.groupby('MINE_ID', as_index=False).mean()
joint1 = mines_df_1.merge(yearlyprod_df_2, how='left', on="MINE_ID")
In [8]:
joint1[joint1.ANNUAL_HOURS >= 0].groupby('COAL_METAL_IND').count()
Out[8]:
MINE_ID
CURRENT_MINE_TYPE
CURRENT_MINE_STATUS
CURRENT_CONTROLLER_ID
CURRENT_OPERATOR_ID
STATE
DISTRICT
PRIMARY_SIC_CD
PRIMARY_CANVASS_CD
OFFICE_CD
PORTABLE_OPERATION
DAYS_PER_WEEK
PART48_TRAINING
PILLAR_RECOVERY_USED
HIGHWALL_MINER_USED
MULTIPLE_PITS
MINERS_REP_IND
SAFETY_COMMITTEE_IND
MILES_FROM_OFFICE
ANNUAL_HOURS
ANNUAL_COAL_PRODUCTION
AVG_EMPLOYEE_CNT
AVG_EMPLOYEE_HOURS
COAL_METAL_IND
C
4940
4940
4940
4934
4938
4940
4940
4940
4940
4940
4940
4940
4940
4940
4940
4940
4940
4940
4940
4940
4845
4940
4940
M
23013
23009
23013
22988
23000
23013
23013
23002
23002
23013
23013
23013
23013
23013
23013
23013
23013
23013
23013
23013
20611
23013
23013
In [9]:
quartz_df_1 = quartz_df.groupby('MINE_ID', as_index=False)['QUARTZ_PCT'].mean()
joint2 = joint1.merge(quartz_df_1, how='left', on="MINE_ID")
In [10]:
ph_df = personalhealth_df.groupby('MINE_ID', as_index=False)['C_OVER_E'].mean()
joint3 = joint2.merge(ph_df, how='left', on="MINE_ID")
In [11]:
noise_df['Composite'] = noise_df.PEL_DOSE_90 + noise_df.PEL_MAX_90
noise_df_1 = noise_df.groupby('MINE_ID', as_index=False)['Composite'].mean()
joint4 = joint3.merge(noise_df_1, how='left', on="MINE_ID")
In [12]:
coaldust_df_1 = coaldust_df.groupby('MINE_ID', as_index=False)['CONC'].mean()
joint5 = joint4.merge(coaldust_df_1, how='left', on="MINE_ID")
In [13]:
areasamples_df.groupby(['MINE_ID', 'CONTAMINANT_CD']).CONCENTRATION.std().reset_index().pivot(index='MINE_ID', columns='CONTAMINANT_CD', values='CONCENTRATION')
Out[13]:
CONTAMINANT_CD
101
103
105
111
133
171
231
263
269
301
305
309
401
413
419
421
493
501
505
521
523
541
560
561
562
625
627
631
635
649
703
729
801
803
811
813
880
995
00000
00011
00079
00101
00103
00105
00108
00110
00111
00113
00121
00123
...
00603
00605
00611
00613
00621
00623
00625
00627
00631
00635
00647
00649
00653
00657
00659
00661
00703
00707
00709
00711
00713
00715
00717
00721
00723
00725
00727
00729
00731
00733
00735
00739
00743
00745
00793
00801
00803
00809
00811
00813
00815
00821
00880
00995
00999
01000
11000
11100
49300
?
MINE_ID
100003
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.459242
0.534522
NaN
NaN
NaN
0.267261
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
100008
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.151658
0.000000
NaN
NaN
NaN
1.673320
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
100010
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
10.984746
0.000000
302.081363
NaN
NaN
4.031743
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.140311
NaN
NaN
NaN
NaN
NaN
NaN
NaN
24.623143
NaN
NaN
NaN
NaN
NaN
NaN
100016
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5.993330
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
100028
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
2.921659
2.930053
2.315065
NaN
NaN
1.650792
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.010351
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
100034
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.346410
0.000000
NaN
NaN
NaN
0.000000
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
100040
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.641898
1.414214
NaN
NaN
NaN
311.558983
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
100394
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
353.553391
NaN
NaN
0.000000
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
100629
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
100644
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.000000
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
101112
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
101264
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.000000
0.000000
NaN
NaN
NaN
0.000000
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
102014
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
102343
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.375269
0.000000
NaN
NaN
NaN
0.778499
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
103237
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
0
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
200024
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
2.371357
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
200112
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
1.406967
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
200134
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
200135
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
2.142429
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
200137
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
4.184794
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
200144
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.164751
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
200150
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
200151
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
2.570772
NaN
NaN
NaN
NaN
0.390145
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
200152
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.367804
0.000000
1.109400
NaN
NaN
0.540977
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.005000
NaN
NaN
NaN
9.177790
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
200632
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
200649
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
10.244302
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
200664
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
200720
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
200826
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
200840
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.252982
3.335966
NaN
NaN
NaN
0.000000
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
4801706
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.120439
0.000000
NaN
NaN
NaN
1.717716
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
4801714
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
4801722
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
2.828427
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
9.328597
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
4801730
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
2.730079
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
4801751
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
4801766
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.106066
0.000000
NaN
NaN
NaN
0.000000
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.000000
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001267
0.141421
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
2.976122
0.631471
NaN
NaN
NaN
62.271775
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.000000
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001532
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5.305927
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001544
NaN
NaN
NaN
41.082904
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5.120317
19.969207
0.305505
NaN
NaN
23.599326
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.000000
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001545
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001562
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
4.291503
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001616
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
8.557024
0.028284
NaN
NaN
NaN
0.463660
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001618
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.000000
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001619
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
45.749809
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001642
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
19.896926
0.000000
NaN
NaN
NaN
4.086420
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.000000
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.000000
NaN
NaN
NaN
NaN
NaN
NaN
5001650
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
7.930322
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001662
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
4.104632
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001678
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.547723
NaN
NaN
NaN
NaN
0.000000
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001693
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.721110
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
3.151058
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001697
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5.993580
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001702
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
1.838478
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001705
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
4.743416
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001760
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0.000000
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001782
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001905
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
11.059069
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001921
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
4.748368
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5001991
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5.372931
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5002006
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
36.048902
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5002007
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
4.101626
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
5400157
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
0
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
6072 rows × 176 columns
In [14]:
# import response data
violations_df = pd.read_csv("Violations.txt", sep="|", quotechar='"')
inspections_df = pd.read_csv("Inspections.txt", sep="|", quotechar='"')
accidents_df = pd.read_csv("Accidents.txt", sep="|", quotechar='"')
/Library/Python/2.7/site-packages/pandas-0.14.1_425_g15b8454-py2.7-macosx-10.9-intel.egg/pandas/io/parsers.py:1141: DtypeWarning: Columns (0,25,34,36,37,46) have mixed types. Specify dtype option on import or set low_memory=False.
data = self._reader.read(nrows)
In [15]:
acc_1 = accidents_df[accidents_df.DEGREE_INJURY_CD.isin(["06","05","03","04","02","01"])]
acc_1['accident_LAV_score'] = acc_1.DEGREE_INJURY_CD.replace(["06","05","03","04","02","01"], [0.001,0.01,0.02,0.03,0.1,1.0])
-c:2: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame.
Try using .loc[row_indexer,col_indexer] = value instead
See the the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
In [16]:
acc_2 = acc_1.groupby("MINE_ID", as_index=False).accident_LAV_score.sum()
In [17]:
inspections_2 = inspections_df.groupby("MINE_ID", as_index=False)["SUM(TOTAL_INSP_HOURS)"].sum()
In [18]:
violations_df.replace(["NoLostDays", "LostDays", "Permanent", "Fatal"], [0.001,0.01,0.1,1.0], inplace=True)
violations_df.replace(["NoLikelihood", "Unlikely", "Reasonably", "Highly", "Occurred"], [0.0625,0.125,0.25,0.5,1.0], inplace=True)
violations_df.replace(["NoNegligence", "LowNegligence", "ModNegligence", "Reckless", "HighNegligence"], [1,2,3,4,5], inplace=True)
In [19]:
violations_df.describe()
Out[19]:
VIOLATION_NO
MINE_ID
CAL_YR
CAL_QTR
FISCAL_YR
FISCAL_QTR
VIOLATION_ISSUE_TIME
ORIG_TERM_DUE_TIME
LATEST_TERM_DUE_TIME
TERMINATION_TIME
VACATE_TIME
LIKELIHOOD
INJ_ILLNESS
NO_AFFECTED
NEGLIGENCE
PROPOSED_PENALTY
AMOUNT_DUE
AMOUNT_PAID
VIOLATOR_VIOLATION_CNT
VIOLATOR_INSPECTION_DAY_CNT
count
2014403.000000
2014403.000000
2014403.000000
2014403.000000
2014403.000000
2014403.000000
2014403.000000
1358462.000000
1942150.000000
1998833.000000
67.000000
1978646.000000
1978663.000000
2014403.000000
1978680.000000
1957606.000000
1957610.000000
1957610.000000
1957610.000000
1957610.000000
mean
7376170.637052
2652018.832546
2007.261143
2.453294
2007.484040
2.561706
1120.182386
1208.720634
1189.456775
1149.066659
23.149254
0.164258
0.192513
1.586897
3.006407
590.513484
483.411122
369.054503
122.008497
150.580113
std
981551.451429
1550431.174535
4.108127
1.098080
4.117541
1.104153
311.637308
379.196812
379.543761
319.002996
189.484808
0.078065
0.368217
7.235470
0.624833
3270.495618
2591.939785
1863.234261
237.538694
277.772463
min
729927.000000
100003.000000
1994.000000
1.000000
1994.000000
1.000000
0.000000
0.000000
0.000000
0.000000
0.000000
0.062500
0.001000
0.000000
1.000000
1.000000
0.000000
0.000000
0.000000
0.000000
25%
6512562.500000
1508079.000000
2004.000000
1.000000
2004.000000
2.000000
930.000000
900.000000
830.000000
930.000000
0.000000
0.125000
0.010000
1.000000
3.000000
60.000000
60.000000
60.000000
0.000000
0.000000
50%
7464697.000000
2402246.000000
2008.000000
2.000000
2008.000000
3.000000
1100.000000
1200.000000
1200.000000
1120.000000
0.000000
0.125000
0.010000
1.000000
3.000000
100.000000
100.000000
100.000000
13.000000
14.000000
75%
8194644.500000
4404856.000000
2011.000000
3.000000
2011.000000
4.000000
1300.000000
1500.000000
1500.000000
1330.000000
0.000000
0.250000
0.100000
1.000000
3.000000
294.000000
285.000000
243.000000
124.000000
155.000000
max
9988780.000000
5500013.000000
2014.000000
4.000000
2015.000000
4.000000
2359.000000
2359.000000
2359.000000
2359.000000
1551.000000
1.000000
1.000000
999.000000
5.000000
220000.000000
220000.000000
220000.000000
2452.000000
3044.000000
In [20]:
violations_df['violation_LAV_score'] = violations_df.INJ_ILLNESS * violations_df.LIKELIHOOD * violations_df.NO_AFFECTED
viol_df = violations_df.groupby('MINE_ID', as_index=False)['violation_LAV_score'].sum()
In [21]:
result_df = viol_df.merge(inspections_2, on='MINE_ID').merge(acc_2, on='MINE_ID', how='left')
In [22]:
result_df.head()
Out[22]:
MINE_ID
violation_LAV_score
SUM(TOTAL_INSP_HOURS)
accident_LAV_score
0
100003
39.710687
4578.50
1.195
1
100004
14.448063
1313.00
1.068
2
100006
5.698875
668.00
0.230
3
100008
17.761312
2038.25
0.738
4
100009
7.871563
919.75
0.203
In [23]:
result_df = result_df.fillna(0)
result_df['total_LAV_score'] = result_df.violation_LAV_score + result_df.accident_LAV_score
In [24]:
dfa = result_df.sort('total_LAV_score', ascending=False)
In [ ]:
dfa.head()
In [162]:
dfz = dfa.merge(mines_df[['MINE_ID','CURRENT_MINE_NAME', 'COAL_METAL_IND', 'CURRENT_MINE_TYPE', 'CURRENT_MINE_STATUS', 'CURRENT_CONTROLLER_NAME', 'CURRENT_OPERATOR_NAME', 'STATE']], on='MINE_ID')
In [84]:
dfz.to_csv('training_data')
In [98]:
dfz.sort('accident_LAV_score',ascending=False).head(30)
Out[98]:
MINE_ID
violation_LAV_score
accident_LAV_score
total_LAV_score
CURRENT_MINE_NAME
COAL_METAL_IND
CURRENT_MINE_TYPE
CURRENT_MINE_STATUS
CURRENT_CONTROLLER_NAME
CURRENT_OPERATOR_NAME
STATE
4
4608436
1101.547063
34.804
1136.351063
Upper Big Branch Mine-South
C
Underground
Abandoned and Sealed
Alpha Natural Resources, Inc.
Performance Coal Company
WV
13
1102752
450.868375
21.885
472.753375
The American Coal Company New Era Mine
C
Underground
Active
Robert E Murray
The American Coal Company
IL
125
102901
107.346312
19.503
126.849312
Shoal Creek Mine
C
Underground
Active
Drummond Company Inc
Drummond Company Inc
AL
102
200024
126.639188
18.241
144.880188
Freeport-McMoRan Morenci Inc.
M
Surface
Active
Freeport-McMoRan Copper & Gold Inc
Freeport-McMoRan Morenci Inc.
AZ
109
101401
117.424062
18.155
135.579062
No 7 Mine
C
Underground
Active
Walter Energy Incorporated
Jim Walter Resources Inc
AL
73
101322
163.702812
17.162
180.864812
No 5 Mine
C
Underground
Abandoned and Sealed
Walter Energy Incorporated
Jim Walter Resources Inc
AL
44
2401490
239.447125
16.191
255.638125
STILLWATER MINE
M
Underground
Active
Stillwater Mining Company
Stillwater Mining Company
MT
52
4601437
213.925375
15.987
229.912375
McElroy Mine
C
Underground
Active
Robert E Murray
McElroy Coal Company
WV
78
3607230
158.561625
14.813
173.374625
Bailey Mine
C
Underground
Active
CONSOL Energy Inc
Consol Pennsylvania Coal Company LLC
PA
28
3605466
315.495313
14.530
330.025313
Emerald Mine No 1
C
Underground
Active
Alpha Natural Resources, Inc.
Emerald Coal Resources LP
PA
87
3301159
147.180875
13.364
160.544875
Powhatan No. 6 Mine
C
Underground
Active
Robert E Murray
The Ohio Valley Coal Company
OH
222
4608791
63.526937
13.051
76.577937
Sago Mine
C
Underground
Abandoned and Sealed
Arch Coal Inc
Wolf Run Mining Company
WV
104
200150
127.416187
11.635
139.051187
Ray
M
Surface
Active
Grupo Mexico S A
Asarco LLC
AZ
32
3605018
290.287813
11.079
301.366813
Cumberland Mine
C
Underground
Active
Alpha Natural Resources, Inc.
Cumberland Coal Resources LP
PA
145
4100906
102.436437
10.888
113.324437
Sherwin Alumina, L.P.
M
Facility
Active
Sherwin Alumina LLC
Sherwin Alumina Company, LLC
TX
91
4404856
144.384000
10.708
155.092000
Buchanan Mine #1
C
Underground
Active
CONSOL Energy Inc
CONSOL Buchanan Mining Company LLC
VA
33
4601816
288.895000
10.364
299.259000
Pinnacle Mine
C
Underground
Active
Cliffs Natural Resources Inc
Pinnacle Mining Company LLC
WV
34
1202215
287.372312
10.267
297.639312
Gibson Mine
C
Underground
Active
Alliance Resource Partners LP
Gibson County Coal LLC
IN
83
101247
156.419187
10.200
166.619187
No 4 Mine
C
Underground
Active
Walter Energy Incorporated
Jim Walter Resources Inc
AL
61
4601456
194.859750
10.169
205.028750
Federal No 2
C
Underground
Active
Patriot Coal Corporation
Eastern Associated Coal LLC
WV
160
4201715
94.288937
9.849
104.137937
Crandall Canyon Mine
C
Underground
Abandoned and Sealed
Robert E Murray
Genwal Resources Inc
UT
53
3607416
220.054312
9.564
229.618312
Enlow Fork Mine
C
Underground
Active
CONSOL Energy Inc
Consol Pennsylvania Coal Company LLC
PA
208
1502709
70.446500
9.416
79.862500
Highland 9 Mine
C
Underground
Active
Patriot Coal Corporation
Highland Mining Company LLC
KY
217
3301070
68.160250
9.249
77.409250
Century Mine
C
Underground
Active
Robert E Murray
American Energy Corporation
OH
48
4601968
234.199125
8.963
243.162125
Blacksville No 2
C
Underground
Active
Robert E Murray
Consolidation Coal Company
WV
29
4601318
319.324813
8.682
328.006813
Robinson Run No 95
C
Underground
Active
Robert E Murray
Consolidation Coal Company
WV
161
1502132
95.469125
8.369
103.838125
Dotiki Mine
C
Underground
Active
Alliance Resource Partners LP
Webster County Coal LLC
KY
27
1103054
350.220063
8.300
358.520063
Willow Lake Portal
C
Underground
Abandoned and Sealed
Peabody Energy
Big Ridge Inc
IL
2
4609086
1182.316063
8.182
1190.498063
Brody Mine No 1
C
Underground
Active
Patriot Coal Corporation
Brody Mining LLC
WV
18
100851
395.106063
8.108
403.214063
Oak Grove Mine
C
Underground
Active
Cliffs Natural Resources Inc
Oak Grove Resources LLC
AL
In [25]:
dfb = dfa.merge(joint5, on='MINE_ID', how='inner')
dfb['ANNUAL_COAL_PRODUCTION'] = dfb['ANNUAL_COAL_PRODUCTION']/1000000
In [26]:
dfb['COAL_METAL_IND'] = dfb.COAL_METAL_IND == 'M'
dfb['PORTABLE_OPERATION'] = dfb.PORTABLE_OPERATION == 'Y'
dfb['PART48_TRAINING'] = dfb.PART48_TRAINING == 'Y'
dfb['PILLAR_RECOVERY_USED'] = dfb.PILLAR_RECOVERY_USED == 'Y'
dfb['HIGHWALL_MINER_USED'] = dfb.HIGHWALL_MINER_USED == 'Y'
dfb['MULTIPLE_PITS'] = dfb.MULTIPLE_PITS == 'Y'
dfb['MINERS_REP_IND'] = dfb.MINERS_REP_IND == 'Y'
dfb['SAFETY_COMMITTEE_IND'] = dfb.SAFETY_COMMITTEE_IND == 'Y'
dfb['TOTAL_INSP_HOURS'] =dfb['SUM(TOTAL_INSP_HOURS)']
dfb['OPERATOR'] = [i if i in ['0133354', '0070543', 'P23960', 'P22918', 'P18954',
'P24453','P22901','P24237','0052652','P24238'] else '00000' for i in dfb.CURRENT_OPERATOR_ID]
dfb['CONTROLLER'] = [i if i in ['0113483', 'C15311', '0108063', '0102049', 'M11292',
'C10977','0079293','0083673','0106783','0041473'] else '00000' for i in dfb.CURRENT_CONTROLLER_ID]
In [ ]:
dfb.head()
In [28]:
from statsmodels.formula.api import ols, rlm
import statsmodels.api as sm
In [29]:
lm1 = ols('''total_LAV_score ~ TOTAL_INSP_HOURS + C(OPERATOR) + C(CONTROLLER) + C(CURRENT_MINE_TYPE) + C(PRIMARY_CANVASS_CD) + (CURRENT_MINE_STATUS) +
C(MULTIPLE_PITS) + AVG_EMPLOYEE_CNT ''', data=dfb, missing='drop').fit()
lm1.summary()
Out[29]:
OLS Regression Results
Dep. Variable: total_LAV_score R-squared: 0.739
Model: OLS Adj. R-squared: 0.739
Method: Least Squares F-statistic: 2142.
Date: Sun, 16 Nov 2014 Prob (F-statistic): 0.00
Time: 10:52:08 Log-Likelihood: -1.0589e+05
No. Observations: 24994 AIC: 2.118e+05
Df Residuals: 24960 BIC: 2.121e+05
Df Model: 33
Covariance Type: nonrobust
coef std err t P>|t| [95.0% Conf. Int.]
Intercept -3.7689 1.075 -3.505 0.000 -5.877 -1.661
C(OPERATOR)[T.0052652] 169.1807 16.794 10.074 0.000 136.262 202.099
C(OPERATOR)[T.0070543] 1043.5914 16.785 62.172 0.000 1010.691 1076.492
C(OPERATOR)[T.0133354] 1620.0402 8.386 193.189 0.000 1603.604 1636.477
C(OPERATOR)[T.P18954] 579.4654 16.772 34.550 0.000 546.592 612.339
C(OPERATOR)[T.P22901] 312.9977 9.734 32.155 0.000 293.919 332.077
C(OPERATOR)[T.P22918] 620.1648 16.758 37.008 0.000 587.319 653.011
C(OPERATOR)[T.P23960] 710.5481 11.853 59.946 0.000 687.315 733.781
C(OPERATOR)[T.P24237] 8.9565 16.951 0.528 0.597 -24.268 42.181
C(OPERATOR)[T.P24238] -36.9832 16.974 -2.179 0.029 -70.253 -3.713
C(OPERATOR)[T.P24453] 3.262e-11 5.12e-13 63.743 0.000 3.16e-11 3.36e-11
C(CONTROLLER)[T.0041473] 49.6991 16.765 2.964 0.003 16.838 82.560
C(CONTROLLER)[T.0079293] 20.5321 16.767 1.225 0.221 -12.333 53.397
C(CONTROLLER)[T.0083673] 10.6988 16.934 0.632 0.528 -22.492 43.890
C(CONTROLLER)[T.0102049] 174.4073 16.767 10.402 0.000 141.542 207.272
C(CONTROLLER)[T.0106783] 64.1789 11.869 5.407 0.000 40.915 87.442
C(CONTROLLER)[T.0108063] 180.9841 16.761 10.798 0.000 148.131 213.837
C(CONTROLLER)[T.0113483] 1620.0402 8.386 193.189 0.000 1603.604 1636.477
C(CONTROLLER)[T.C10977] -3.028e-13 1.08e-14 -28.149 0.000 -3.24e-13 -2.82e-13
C(CONTROLLER)[T.C15311] 250.4140 16.758 14.943 0.000 217.568 283.260
C(CONTROLLER)[T.M11292] 10.7197 11.916 0.900 0.368 -12.636 34.076
C(CURRENT_MINE_TYPE)[T.Surface] -2.3782 0.501 -4.748 0.000 -3.360 -1.396
C(CURRENT_MINE_TYPE)[T.Underground] 5.2002 0.687 7.569 0.000 3.854 6.547
C(PRIMARY_CANVASS_CD)[T.2.0] 3.7041 1.069 3.465 0.001 1.609 5.799
C(PRIMARY_CANVASS_CD)[T.5.0] 6.2541 1.073 5.830 0.000 4.151 8.357
C(PRIMARY_CANVASS_CD)[T.6.0] 6.4738 1.075 6.025 0.000 4.368 8.580
C(PRIMARY_CANVASS_CD)[T.7.0] 5.8435 1.139 5.128 0.000 3.610 8.077
C(PRIMARY_CANVASS_CD)[T.8.0] 6.1549 1.267 4.857 0.000 3.671 8.639
CURRENT_MINE_STATUS[T.Abandoned and Sealed] -5.3413 0.769 -6.942 0.000 -6.850 -3.833
CURRENT_MINE_STATUS[T.Active] 1.9931 0.278 7.168 0.000 1.448 2.538
CURRENT_MINE_STATUS[T.Intermittent] 0.3342 0.285 1.172 0.241 -0.225 0.893
CURRENT_MINE_STATUS[T.New Mine] 0.2061 6.334 0.033 0.974 -12.208 12.621
CURRENT_MINE_STATUS[T.NonProducing] 0.6508 0.852 0.764 0.445 -1.019 2.321
CURRENT_MINE_STATUS[T.Temporarily Idled] 0.0326 0.563 0.058 0.954 -1.072 1.137
C(MULTIPLE_PITS)[T.True] -7.2536 1.255 -5.780 0.000 -9.714 -4.794
TOTAL_INSP_HOURS 0.0040 4.25e-05 93.813 0.000 0.004 0.004
AVG_EMPLOYEE_CNT 0.1138 0.008 13.666 0.000 0.098 0.130
Omnibus: 55010.871 Durbin-Watson: 1.176
Prob(Omnibus): 0.000 Jarque-Bera (JB): 1704026157.336
Skew: 19.444 Prob(JB): 0.00
Kurtosis: 1281.572 Cond. No. 6.02e+19
In [224]:
dfb.TOTAL_INSP_HOURS.mean() * 0.0040 -3.7688
Out[224]:
-0.88889591361093867
In [223]:
print lm1.params
Intercept -3.768854e+00
C(OPERATOR)[T.0052652] 1.691807e+02
C(OPERATOR)[T.0070543] 1.043591e+03
C(OPERATOR)[T.0133354] 1.620040e+03
C(OPERATOR)[T.P18954] 5.794654e+02
C(OPERATOR)[T.P22901] 3.129977e+02
C(OPERATOR)[T.P22918] 6.201648e+02
C(OPERATOR)[T.P23960] 7.105481e+02
C(OPERATOR)[T.P24237] 8.956473e+00
C(OPERATOR)[T.P24238] -3.698322e+01
C(OPERATOR)[T.P24453] 3.261802e-11
C(CONTROLLER)[T.0041473] 4.969910e+01
C(CONTROLLER)[T.0079293] 2.053214e+01
C(CONTROLLER)[T.0083673] 1.069881e+01
C(CONTROLLER)[T.0102049] 1.744073e+02
C(CONTROLLER)[T.0106783] 6.417888e+01
C(CONTROLLER)[T.0108063] 1.809841e+02
C(CONTROLLER)[T.0113483] 1.620040e+03
C(CONTROLLER)[T.C10977] -3.028255e-13
C(CONTROLLER)[T.C15311] 2.504140e+02
C(CONTROLLER)[T.M11292] 1.071968e+01
C(CURRENT_MINE_TYPE)[T.Surface] -2.378204e+00
C(CURRENT_MINE_TYPE)[T.Underground] 5.200240e+00
C(PRIMARY_CANVASS_CD)[T.2.0] 3.704141e+00
C(PRIMARY_CANVASS_CD)[T.5.0] 6.254072e+00
C(PRIMARY_CANVASS_CD)[T.6.0] 6.473796e+00
C(PRIMARY_CANVASS_CD)[T.7.0] 5.843520e+00
C(PRIMARY_CANVASS_CD)[T.8.0] 6.154869e+00
CURRENT_MINE_STATUS[T.Abandoned and Sealed] -5.341325e+00
CURRENT_MINE_STATUS[T.Active] 1.993061e+00
CURRENT_MINE_STATUS[T.Intermittent] 3.342219e-01
CURRENT_MINE_STATUS[T.New Mine] 2.060835e-01
CURRENT_MINE_STATUS[T.NonProducing] 6.508366e-01
CURRENT_MINE_STATUS[T.Temporarily Idled] 3.258712e-02
C(MULTIPLE_PITS)[T.True] -7.253592e+00
TOTAL_INSP_HOURS 3.983948e-03
AVG_EMPLOYEE_CNT 1.138435e-01
dtype: float64
In [216]:
dfp = dfb.groupby('CURRENT_CONTROLLER_ID',as_index=False).total_LAV_score.mean()
In [217]:
dfp.sort('total_LAV_score', ascending=False)
Out[217]:
CURRENT_CONTROLLER_ID
total_LAV_score
5207
0113483
3244.619937
5955
C15311
251.589500
4744
0108063
241.543375
4232
0102049
198.058000
8643
M11292
150.296375
5676
C10977
124.878063
2906
0079293
117.637125
3130
0083673
113.324437
4632
0106783
110.939844
526
0041473
108.626562
2606
0073073
107.188687
6308
M00326
105.936375
6346
M00472
101.098156
5042
0111301
99.186812
4732
0107927
94.783812
4904
0109921
90.848333
5652
C10334
90.084391
4661
0107041
86.708906
4933
0110263
85.995510
6767
M01961
85.849687
6246
M00106
83.917163
1877
0059869
82.165889
3314
0086813
81.448250
6190
C16057
80.392000
4400
0104017
79.483055
3025
0081153
77.556594
7704
M08198
76.862437
5173
0113185
76.574375
6279
M00222
75.821437
7774
M08580
74.479750
...
...
...
11624
M37589
0.000000
6317
M00347
0.000000
10812
M32157
0.000000
7901
M09143
0.000000
2419
0069633
0.000000
2420
0069635
0.000000
2434
0069791
0.000000
7809
M08759
0.000000
7766
M08543
0.000000
2460
0070251
0.000000
2484
0070653
0.000000
4554
0105919
0.000000
2507
0071113
0.000000
7309
M05756
0.000000
2519
0071293
0.000000
7193
M04883
0.000000
7102
M04000
0.000000
2530
0071533
0.000000
11650
M37779
0.000000
6959
M02989
0.000000
6927
M02778
0.000000
2540
0071699
0.000000
6923
M02765
0.000000
6905
M02641
0.000000
6886
M02564
0.000000
2629
0073691
0.000000
6779
M02001
0.000000
6685
M01730
0.000000
6674
M01706
0.000000
10498
M30041
0.000000
12040 rows × 2 columns
In [128]:
[i for i in mines_df if i ['0133354', '0070543', 'P23960', 'P22918', 'P18954',
'P24453','P22901','P24237','0052652','P24238']
Out[128]:
dtype('S8')
In [ ]:
import matplotlib.pyplot as plt
plt.hist(dfb.total_LAV_score, bins=list(np.arange(0,1,0.1)) + list(np.arange(1,10,1))+ list(np.arange(10,100,10))+ list(np.arange(100,100,100)))
plt.show()
In [55]:
[[i,j] for i,j in zip(a[1], a[0])]
Out[55]:
[[0.0, 4498],
[0.10000000000000001, 1656],
[0.20000000000000001, 1403],
[0.30000000000000004, 931],
[0.40000000000000002, 769],
[0.5, 1066],
[0.60000000000000009, 784],
[0.70000000000000007, 664],
[0.80000000000000004, 593],
[0.90000000000000002, 532],
[1.0, 4016],
[2.0, 2308],
[3.0, 1500],
[4.0, 1045],
[5.0, 746],
[6.0, 522],
[7.0, 404],
[8.0, 284],
[9.0, 255],
[10.0, 934],
[20.0, 248],
[30.0, 144],
[40.0, 81],
[50.0, 73],
[60.0, 49],
[70.0, 31],
[80.0, 23]]
In [52]:
Out[52]:
[0.0,
0.10000000000000001,
0.20000000000000001,
0.30000000000000004,
0.40000000000000002,
0.5,
0.60000000000000009,
0.70000000000000007,
0.80000000000000004,
0.90000000000000002,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
20,
30,
40,
50,
60,
70,
80,
90]
In [ ]:
Content source: tmsgost/Bayes_Impact
Similar notebooks: