GeoJson object (layer) not being added to Folium map - python

Have looked at previous similar questions and implemented suggestions but I am still having trouble getting a layer to appear on a Folium map. Basically I have used Here's isoline API to create an array of GeoJson data objects (these are bascially areas reacjable within certain drivetimes). I can render these drivetimes on a Here map but would like to use Folium as I think it's easier to set layer colors etc.
So the GeoJson objects (drivetimes) are stored in an array called "values".
My code is as follows:
# Create the map
m = folium.Map(location=[latitude, longitude], zoom_start=13)
# Add a marker to the map
folium.Marker(
[latitude, longitude]
).add_to(m)
# Add the layer
folium.GeoJson(data=value[0], name="geojson").add_to(m)
folium.LayerControl().add_to(m)
m
An example of one of the drivetimes is as follows, any help would be appreciated:
{"data": {"features": [{"geometry": {"coordinates": [[[-6.643639, 53.382568], [-6.635742, 53.382568], [-6.633682, 53.381882], [-6.632309, 53.380508], [-6.630249, 53.379822], [-6.622009, 53.379822], [-6.619949, 53.379135], [-6.618576, 53.377762], [-6.616516, 53.377075], [-6.611023, 53.377075], [-6.608963, 53.376389], [-6.60759, 53.375015], [-6.60553, 53.374329], [-6.600037, 53.374329], [-6.597977, 53.375015], [-6.596603, 53.376389], [-6.594543, 53.377075], [-6.586304, 53.377075], [-6.584244, 53.376389], [-6.58287, 53.372269], [-6.580811, 53.371582], [-6.564331, 53.371582], [-6.562271, 53.372269], [-6.560898, 53.373642], [-6.558838, 53.374329], [-6.556091, 53.374329], [-6.554031, 53.373642], [-6.552658, 53.372269], [-6.550598, 53.371582], [-6.548538, 53.372269], [-6.547852, 53.374329], [-6.547852, 53.377075], [-6.547165, 53.379135], [-6.544418, 53.381882], [-6.542358, 53.382568], [-6.540298, 53.381882], [-6.538925, 53.380508], [-6.537552, 53.380508], [-6.536179, 53.381882], [-6.534119, 53.382568], [-6.525879, 53.382568], [-6.523819, 53.381882], [-6.522446, 53.377762], [-6.520386, 53.377075], [-6.514893, 53.377075], [-6.512833, 53.376389], [-6.511459, 53.375015], [-6.509399, 53.374329], [-6.50116, 53.374329], [-6.4991, 53.373642], [-6.497726, 53.372269], [-6.495667, 53.371582], [-6.493607, 53.372269], [-6.493607, 53.373642], [-6.497726, 53.377762], [-6.498413, 53.379822], [-6.497726, 53.381882], [-6.49498, 53.384628], [-6.49292, 53.385315], [-6.490173, 53.385315], [-6.488113, 53.384628], [-6.48674, 53.383255], [-6.48468, 53.382568], [-6.479187, 53.382568], [-6.477127, 53.381882], [-6.475754, 53.380508], [-6.471634, 53.379135], [-6.470261, 53.377762], [-6.468201, 53.377075], [-6.465454, 53.377075], [-6.463394, 53.377762], [-6.463394, 53.379135], [-6.466141, 53.381882], [-6.470261, 53.383255], [-6.473007, 53.386002], [-6.473694, 53.388062], [-6.473694, 53.396301], [-6.47438, 53.398361], [-6.4785, 53.399734], [-6.479187, 53.401794], [-6.479187, 53.404541], [-6.479874, 53.406601], [-6.481934, 53.407288], [-6.483994, 53.406601], [-6.485367, 53.402481], [-6.487427, 53.401794], [-6.495667, 53.401794], [-6.497726, 53.402481], [-6.4991, 53.406601], [-6.500473, 53.406601], [-6.501846, 53.405228], [-6.503906, 53.404541], [-6.514893, 53.404541], [-6.516953, 53.405228], [-6.517639, 53.407288], [-6.517639, 53.410034], [-6.516953, 53.412094], [-6.514893, 53.412781], [-6.512146, 53.412781], [-6.510086, 53.413467], [-6.508713, 53.414841], [-6.504593, 53.416214], [-6.50322, 53.417587], [-6.4991, 53.418961], [-6.498413, 53.421021], [-6.4991, 53.42308], [-6.50116, 53.423767], [-6.517639, 53.423767], [-6.519699, 53.424454], [-6.521072, 53.428574], [-6.525192, 53.429947], [-6.526566, 53.43132], [-6.530685, 53.432693], [-6.533432, 53.43544], [-6.534119, 53.4375], [-6.533432, 53.43956], [-6.530685, 53.442307], [-6.528625, 53.442993], [-6.525879, 53.442993], [-6.523819, 53.442307], [-6.522446, 53.440933], [-6.518326, 53.43956], [-6.516953, 53.438187], [-6.514893, 53.4375], [-6.512146, 53.4375], [-6.510086, 53.436813], [-6.508713, 53.43544], [-6.506653, 53.434753], [-6.50116, 53.434753], [-6.4991, 53.434067], [-6.497726, 53.432693], [-6.493607, 53.43132], [-6.492233, 53.429947], [-6.49086, 53.429947], [-6.489487, 53.43132], [-6.485367, 53.432693], [-6.48468, 53.434753], [-6.485367, 53.436813], [-6.489487, 53.438187], [-6.490173, 53.440247], [-6.489487, 53.442307], [-6.488113, 53.44368], [-6.488113, 53.445053], [-6.49086, 53.4478], [-6.49292, 53.448486], [-6.498413, 53.448486], [-6.500473, 53.4478], [-6.501846, 53.446426], [-6.503906, 53.44574], [-6.509399, 53.44574], [-6.511459, 53.446426], [-6.512146, 53.448486], [-6.512146, 53.451233], [-6.512833, 53.453293], [-6.514893, 53.453979], [-6.517639, 53.453979], [-6.519699, 53.454666], [-6.521072, 53.456039], [-6.525192, 53.457413], [-6.527939, 53.460159], [-6.528625, 53.462219], [-6.527939, 53.464279], [-6.525192, 53.467026], [-6.523132, 53.467712], [-6.521072, 53.467026], [-6.519699, 53.465652], [-6.517639, 53.464966], [-6.515579, 53.465652], [-6.515579, 53.467026], [-6.536179, 53.487625], [-6.536865, 53.489685], [-6.536865, 53.492432], [-6.536179, 53.494492], [-6.534119, 53.495178], [-6.528625, 53.495178], [-6.526566, 53.494492], [-6.511459, 53.479385], [-6.509399, 53.478699], [-6.506653, 53.478699], [-6.504593, 53.479385], [-6.50322, 53.480759], [-6.50116, 53.481445], [-6.4991, 53.480759], [-6.497726, 53.479385], [-6.493607, 53.478012], [-6.481247, 53.465652], [-6.479874, 53.465652], [-6.4785, 53.469772], [-6.477127, 53.471146], [-6.477127, 53.472519], [-6.4785, 53.473892], [-6.479187, 53.475952], [-6.4785, 53.478012], [-6.475754, 53.480759], [-6.473694, 53.481445], [-6.470947, 53.481445], [-6.468887, 53.480759], [-6.466141, 53.478012], [-6.465454, 53.475952], [-6.465454, 53.470459], [-6.464767, 53.468399], [-6.462021, 53.465652], [-6.457901, 53.464279], [-6.457214, 53.462219], [-6.457214, 53.459473], [-6.457901, 53.457413], [-6.459961, 53.456726], [-6.465454, 53.456726], [-6.467514, 53.456039], [-6.470261, 53.453293], [-6.470261, 53.45192], [-6.467514, 53.449173], [-6.463394, 53.4478], [-6.462021, 53.446426], [-6.459961, 53.44574], [-6.448975, 53.44574], [-6.446915, 53.446426], [-6.445541, 53.450546], [-6.443481, 53.451233], [-6.437988, 53.451233], [-6.435928, 53.450546], [-6.434555, 53.449173], [-6.430435, 53.4478], [-6.429749, 53.44574], [-6.430435, 53.44368], [-6.431808, 53.442307], [-6.431808, 53.440933], [-6.430435, 53.43956], [-6.429749, 53.4375], [-6.430435, 53.43544], [-6.434555, 53.434067], [-6.435928, 53.432693], [-6.437988, 53.432007], [-6.440735, 53.432007], [-6.442795, 53.432693], [-6.444168, 53.434067], [-6.445541, 53.434067], [-6.446915, 53.429947], [-6.451035, 53.428574], [-6.451721, 53.426514], [-6.451035, 53.424454], [-6.446915, 53.42308], [-6.445541, 53.421707], [-6.444168, 53.421707], [-6.437302, 53.428574], [-6.433182, 53.429947], [-6.431808, 53.43132], [-6.429749, 53.432007], [-6.424255, 53.432007], [-6.422195, 53.43132], [-6.418076, 53.4272], [-6.416016, 53.426514], [-6.405029, 53.426514], [-6.402969, 53.425827], [-6.401596, 53.424454], [-6.397476, 53.42308], [-6.396103, 53.421707], [-6.394043, 53.421021], [-6.391983, 53.421707], [-6.387863, 53.425827], [-6.383743, 53.4272], [-6.383057, 53.42926], [-6.383743, 53.43132], [-6.385803, 53.432007], [-6.391296, 53.432007], [-6.393356, 53.432693], [-6.39473, 53.434067], [-6.39679, 53.434753], [-6.399536, 53.434753], [-6.401596, 53.43544], [-6.402283, 53.4375], [-6.402283, 53.440247], [-6.401596, 53.442307], [-6.399536, 53.442993], [-6.383057, 53.442993], [-6.380997, 53.44368], [-6.376877, 53.4478], [-6.374817, 53.448486], [-6.369324, 53.448486], [-6.367264, 53.4478], [-6.365891, 53.446426], [-6.363831, 53.44574], [-6.361771, 53.446426], [-6.361084, 53.448486], [-6.361084, 53.451233], [-6.361771, 53.453293], [-6.363831, 53.453979], [-6.369324, 53.453979], [-6.371384, 53.454666], [-6.37207, 53.456726], [-6.37207, 53.459473], [-6.371384, 53.461533], [-6.37001, 53.462906], [-6.37001, 53.464279], [-6.371384, 53.465652], [-6.372757, 53.469772], [-6.383743, 53.480759], [-6.385803, 53.481445], [-6.38855, 53.481445], [-6.39061, 53.482132], [-6.391983, 53.483505], [-6.396103, 53.484879], [-6.397476, 53.486252], [-6.399536, 53.486938], [-6.410522, 53.486938], [-6.412582, 53.487625], [-6.413956, 53.488998], [-6.418076, 53.490372], [-6.423569, 53.495865], [-6.424255, 53.497925], [-6.424255, 53.500671], [-6.424942, 53.502731], [-6.426315, 53.504105], [-6.427002, 53.506165], [-6.427002, 53.514404], [-6.426315, 53.516464], [-6.424255, 53.517151], [-6.418762, 53.517151], [-6.416702, 53.516464], [-6.413956, 53.513718], [-6.413269, 53.511658], [-6.413269, 53.506165], [-6.412582, 53.504105], [-6.411209, 53.502731], [-6.409836, 53.498611], [-6.408463, 53.498611], [-6.407089, 53.499985], [-6.405029, 53.500671], [-6.399536, 53.500671], [-6.397476, 53.501358], [-6.39679, 53.503418], [-6.39679, 53.506165], [-6.396103, 53.508224], [-6.394043, 53.508911], [-6.38855, 53.508911], [-6.38649, 53.508224], [-6.379623, 53.501358], [-6.377563, 53.500671], [-6.37207, 53.500671], [-6.37001, 53.499985], [-6.368637, 53.498611], [-6.364517, 53.497238], [-6.363831, 53.495178], [-6.363831, 53.492432], [-6.364517, 53.490372], [-6.368637, 53.488998], [-6.368637, 53.487625], [-6.367264, 53.486252], [-6.365891, 53.482132], [-6.363144, 53.479385], [-6.361084, 53.478699], [-6.352844, 53.478699], [-6.350784, 53.478012], [-6.348038, 53.475266], [-6.348038, 53.473892], [-6.349411, 53.472519], [-6.350098, 53.470459], [-6.349411, 53.468399], [-6.348038, 53.468399], [-6.346664, 53.469772], [-6.344604, 53.470459], [-6.339111, 53.470459], [-6.337051, 53.469772], [-6.331558, 53.464279], [-6.330872, 53.462219], [-6.331558, 53.460159], [-6.335678, 53.458786], [-6.335678, 53.457413], [-6.332932, 53.454666], [-6.330872, 53.453979], [-6.319885, 53.453979], [-6.317825, 53.454666], [-6.317139, 53.456726], [-6.317139, 53.459473], [-6.316452, 53.461533], [-6.314392, 53.462219], [-6.303406, 53.462219], [-6.301346, 53.462906], [-6.299973, 53.464279], [-6.297913, 53.464966], [-6.295166, 53.464966], [-6.293106, 53.464279], [-6.290359, 53.461533], [-6.288986, 53.457413], [-6.286926, 53.456726], [-6.27594, 53.456726], [-6.27388, 53.456039], [-6.271133, 53.453293], [-6.26976, 53.449173], [-6.268387, 53.449173], [-6.267014, 53.450546], [-6.264954, 53.451233], [-6.256714, 53.451233], [-6.254654, 53.450546], [-6.253281, 53.448486], [-6.251907, 53.447113], [-6.250534, 53.4478], [-6.249161, 53.449173], [-6.247787, 53.453293], [-6.245728, 53.453979], [-6.234741, 53.453979], [-6.232681, 53.454666], [-6.228561, 53.458786], [-6.226501, 53.459473], [-6.221008, 53.459473], [-6.218948, 53.460159], [-6.218948, 53.461533], [-6.220322, 53.462906], [-6.221008, 53.464966], [-6.221008, 53.475952], [-6.220322, 53.478012], [-6.218262, 53.478699], [-6.215515, 53.478699], [-6.213455, 53.479385], [-6.212769, 53.481445], [-6.212769, 53.489685], [-6.212082, 53.491745], [-6.207962, 53.495865], [-6.207275, 53.497925], [-6.207275, 53.508911], [-6.206589, 53.510971], [-6.204529, 53.511658], [-6.199036, 53.511658], [-6.196976, 53.510971], [-6.194229, 53.508224], [-6.193542, 53.506165], [-6.193542, 53.495178], [-6.194229, 53.493118], [-6.195602, 53.491745], [-6.195602, 53.490372], [-6.194229, 53.488998], [-6.193542, 53.486938], [-6.193542, 53.484192], [-6.192856, 53.482132], [-6.191483, 53.480759], [-6.190796, 53.478699], [-6.191483, 53.476639], [-6.195602, 53.472519], [-6.196289, 53.470459], [-6.196289, 53.451233], [-6.195602, 53.449173], [-6.191483, 53.4478], [-6.188736, 53.445053], [-6.188049, 53.442993], [-6.188736, 53.440933], [-6.191483, 53.438187], [-6.193542, 53.4375], [-6.199036, 53.4375], [-6.201096, 53.436813], [-6.206589, 53.43132], [-6.206589, 53.429947], [-6.204529, 53.42926], [-6.193542, 53.42926], [-6.191483, 53.428574], [-6.190109, 53.4272], [-6.188049, 53.426514], [-6.185303, 53.426514], [-6.183243, 53.425827], [-6.182556, 53.423767], [-6.183243, 53.421707], [-6.183929, 53.420334], [-6.182556, 53.418961], [-6.17981, 53.418274], [-6.174316, 53.418274], [-6.172256, 53.417587], [-6.170883, 53.413467], [-6.166763, 53.412094], [-6.164017, 53.409348], [-6.162643, 53.405228], [-6.158524, 53.403854], [-6.155777, 53.401108], [-6.15509, 53.399048], [-6.155777, 53.396988], [-6.158524, 53.394241], [-6.162643, 53.392868], [-6.16333, 53.390808], [-6.16333, 53.388062], [-6.162643, 53.386002], [-6.160583, 53.385315], [-6.157837, 53.385315], [-6.155777, 53.386002], [-6.154404, 53.387375], [-6.152344, 53.388062], [-6.144104, 53.388062], [-6.142044, 53.387375], [-6.141357, 53.385315], [-6.141357, 53.382568], [-6.142044, 53.380508], [-6.144791, 53.377762], [-6.146851, 53.377075], [-6.149597, 53.377075], [-6.151657, 53.376389], [-6.152344, 53.374329], [-6.152344, 53.371582], [-6.15303, 53.369522], [-6.15509, 53.368835], [-6.157837, 53.368835], [-6.159897, 53.368149], [-6.16127, 53.366776], [-6.16539, 53.365402], [-6.168137, 53.362656], [-6.168137, 53.361282], [-6.166763, 53.359909], [-6.166077, 53.357849], [-6.166077, 53.355103], [-6.166763, 53.353043], [-6.168823, 53.352356], [-6.177063, 53.352356], [-6.179123, 53.353043], [-6.180496, 53.354416], [-6.182556, 53.355103], [-6.185303, 53.355103], [-6.187363, 53.354416], [-6.188049, 53.352356], [-6.188049, 53.346863], [-6.188736, 53.344803], [-6.190109, 53.34343], [-6.190796, 53.34137], [-6.190796, 53.338623], [-6.191483, 53.336563], [-6.193542, 53.335876], [-6.201782, 53.335876], [-6.203842, 53.33519], [-6.203842, 53.333817], [-6.202469, 53.332443], [-6.201096, 53.328323], [-6.199722, 53.32695], [-6.199036, 53.32489], [-6.199036, 53.319397], [-6.198349, 53.317337], [-6.195602, 53.31459], [-6.191483, 53.313217], [-6.190109, 53.311844], [-6.185989, 53.310471], [-6.185303, 53.308411], [-6.185303, 53.305664], [-6.185989, 53.303604], [-6.188049, 53.302917], [-6.190796, 53.302917], [-6.192856, 53.302231], [-6.194229, 53.298111], [-6.195602, 53.296738], [-6.196976, 53.292618], [-6.199036, 53.291931], [-6.207275, 53.291931], [-6.209335, 53.292618], [-6.210709, 53.293991], [-6.212769, 53.294678], [-6.221008, 53.294678], [-6.223068, 53.293991], [-6.224442, 53.289871], [-6.232681, 53.281631], [-6.236801, 53.280258], [-6.237488, 53.278198], [-6.236801, 53.276138], [-6.234741, 53.275452], [-6.210022, 53.275452], [-6.207962, 53.274765], [-6.206589, 53.273392], [-6.202469, 53.272018], [-6.201782, 53.269958], [-6.201782, 53.267212], [-6.202469, 53.265152], [-6.204529, 53.264465], [-6.210022, 53.264465], [-6.212082, 53.265152], [-6.213455, 53.266525], [-6.215515, 53.267212], [-6.237488, 53.267212], [-6.239548, 53.266525], [-6.240921, 53.265152], [-6.242981, 53.264465], [-6.245728, 53.264465], [-6.247787, 53.263779], [-6.249161, 53.262405], [-6.251221, 53.261719], [-6.25946, 53.261719], [-6.26152, 53.262405], [-6.262894, 53.263779], [-6.264954, 53.264465], [-6.270447, 53.264465], [-6.272507, 53.263779], [-6.27388, 53.262405], [-6.27594, 53.261719], [-6.289673, 53.261719], [-6.291733, 53.262405], [-6.293106, 53.263779], [-6.295166, 53.264465], [-6.300659, 53.264465], [-6.302719, 53.265152], [-6.304092, 53.266525], [-6.306152, 53.267212], [-6.314392, 53.267212], [-6.316452, 53.266525], [-6.316452, 53.265152], [-6.312332, 53.263779], [-6.311646, 53.261719], [-6.312332, 53.259659], [-6.315079, 53.256912], [-6.317139, 53.256226], [-6.322632, 53.256226], [-6.324692, 53.256912], [-6.328812, 53.261032], [-6.332932, 53.262405], [-6.334305, 53.263779], [-6.336365, 53.264465], [-6.347351, 53.264465], [-6.349411, 53.265152], [-6.350784, 53.266525], [-6.352158, 53.266525], [-6.353531, 53.265152], [-6.355591, 53.264465], [-6.363831, 53.264465], [-6.365891, 53.265152], [-6.366577, 53.267212], [-6.366577, 53.269958], [-6.367264, 53.272018], [-6.369324, 53.272705], [-6.377563, 53.272705], [-6.379623, 53.273392], [-6.380997, 53.277512], [-6.383057, 53.278198], [-6.385117, 53.277512], [-6.38649, 53.276138], [-6.38855, 53.275452], [-6.405029, 53.275452], [-6.407089, 53.276138], [-6.408463, 53.276825], [-6.409836, 53.275452], [-6.411209, 53.273392], [-6.413269, 53.272705], [-6.421509, 53.272705], [-6.423569, 53.273392], [-6.424942, 53.274765], [-6.426315, 53.274765], [-6.427689, 53.270645], [-6.429749, 53.269958], [-6.440735, 53.269958], [-6.442795, 53.269272], [-6.444168, 53.267899], [-6.446228, 53.267212], [-6.451721, 53.267212], [-6.453781, 53.267899], [-6.457901, 53.272018], [-6.459961, 53.273392], [-6.462708, 53.274765], [-6.465454, 53.275452], [-6.468201, 53.275452], [-6.470261, 53.274765], [-6.471634, 53.273392], [-6.475754, 53.272018], [-6.477127, 53.270645], [-6.4785, 53.270645], [-6.479874, 53.272018], [-6.481934, 53.272705], [-6.498413, 53.272705], [-6.500473, 53.272018], [-6.501846, 53.270645], [-6.503906, 53.269958], [-6.506653, 53.269958], [-6.508713, 53.269272], [-6.510086, 53.267899], [-6.514206, 53.266525], [-6.515579, 53.265152], [-6.517639, 53.264465], [-6.523132, 53.264465], [-6.525192, 53.265152], [-6.525879, 53.267212], [-6.525879, 53.269958], [-6.525192, 53.272018], [-6.521072, 53.273392], [-6.519699, 53.274765], [-6.515579, 53.276138], [-6.514206, 53.277512], [-6.510086, 53.278885], [-6.508713, 53.280258], [-6.506653, 53.280945], [-6.498413, 53.280945], [-6.496353, 53.281631], [-6.49498, 53.283005], [-6.49292, 53.283691], [-6.487427, 53.283691], [-6.485367, 53.284378], [-6.483994, 53.285751], [-6.481934, 53.286438], [-6.47644, 53.286438], [-6.47438, 53.287125], [-6.473694, 53.289185], [-6.473694, 53.291931], [-6.473007, 53.293991], [-6.470947, 53.294678], [-6.465454, 53.294678], [-6.463394, 53.293991], [-6.462021, 53.292618], [-6.459961, 53.291931], [-6.454468, 53.291931], [-6.452408, 53.292618], [-6.451035, 53.293991], [-6.446915, 53.295364], [-6.445541, 53.299484], [-6.444168, 53.300858], [-6.444168, 53.302231], [-6.446228, 53.302917], [-6.448975, 53.302917], [-6.451035, 53.303604], [-6.452408, 53.307724], [-6.454468, 53.308411], [-6.459961, 53.308411], [-6.462021, 53.307724], [-6.463394, 53.306351], [-6.465454, 53.305664], [-6.473694, 53.305664], [-6.475754, 53.306351], [-6.477127, 53.310471], [-6.479187, 53.311157], [-6.481247, 53.310471], [-6.48262, 53.309097], [-6.48468, 53.308411], [-6.490173, 53.308411], [-6.492233, 53.309097], [-6.49498, 53.311844], [-6.495667, 53.313904], [-6.49498, 53.315964], [-6.49086, 53.317337], [-6.48674, 53.321457], [-6.48468, 53.322144], [-6.473694, 53.322144], [-6.471634, 53.32283], [-6.467514, 53.32695], [-6.463394, 53.328323], [-6.463394, 53.329697], [-6.467514, 53.33107], [-6.468887, 53.332443], [-6.470947, 53.33313], [-6.47644, 53.33313], [-6.4785, 53.333817], [-6.479874, 53.33519], [-6.483994, 53.336563], [-6.485367, 53.337936], [-6.48674, 53.337936], [-6.49086, 53.333817], [-6.49498, 53.332443], [-6.495667, 53.330383], [-6.495667, 53.327637], [-6.496353, 53.325577], [-6.4991, 53.32283], [-6.50116, 53.322144], [-6.514893, 53.322144], [-6.516953, 53.321457], [-6.518326, 53.320084], [-6.520386, 53.319397], [-6.523132, 53.319397], [-6.525192, 53.320084], [-6.527939, 53.32283], [-6.528625, 53.32489], [-6.527939, 53.32695], [-6.523819, 53.33107], [-6.523132, 53.33313], [-6.523819, 53.33519], [-6.525879, 53.335876], [-6.527939, 53.33519], [-6.529312, 53.333817], [-6.531372, 53.33313], [-6.542358, 53.33313], [-6.544418, 53.333817], [-6.545105, 53.335876], [-6.545105, 53.338623], [-6.545792, 53.340683], [-6.548538, 53.34343], [-6.550598, 53.344116], [-6.553345, 53.344116], [-6.555405, 53.344803], [-6.556778, 53.348923], [-6.560898, 53.353043], [-6.562271, 53.357162], [-6.564331, 53.357849], [-6.569824, 53.357849], [-6.571884, 53.358536], [-6.573257, 53.359909], [-6.575317, 53.360596], [-6.583557, 53.360596], [-6.585617, 53.359909], [-6.58699, 53.355789], [-6.59111, 53.351669], [-6.592484, 53.347549], [-6.59523, 53.344803], [-6.59729, 53.344116], [-6.600037, 53.344116], [-6.602097, 53.344803], [-6.604843, 53.347549], [-6.60553, 53.349609], [-6.60553, 53.352356], [-6.604843, 53.354416], [-6.600723, 53.358536], [-6.600037, 53.360596], [-6.600723, 53.362656], [-6.60347, 53.365402], [-6.60553, 53.366089], [-6.61377, 53.366089], [-6.615829, 53.366776], [-6.617203, 53.368149], [-6.619263, 53.368835], [-6.624756, 53.368835], [-6.626816, 53.369522], [-6.628189, 53.370895], [-6.630249, 53.371582], [-6.635742, 53.371582], [-6.637802, 53.372269], [-6.639175, 53.373642], [-6.641235, 53.374329], [-6.643982, 53.374329], [-6.646042, 53.375015], [-6.646729, 53.377075], [-6.646729, 53.379822], [-6.646385, 53.381882], [-6.645355, 53.382568], [-6.643639, 53.382568]]], "type": "Polygon"}, "properties": {"range": {"type": "time", "value": 1500}}, "type": "Feature"}], "type": "FeatureCollection"}, "type": "GeoJSON"}

To specify polygons without changing the data in your question, you need to specify geometry values in dictionary form.
import folium
latitude = 53.372
longitude = -6.49
# Create the map
m = folium.Map(location=[latitude, longitude], zoom_start=10)
# Add a marker to the map
folium.Marker(
[latitude, longitude]
).add_to(m)
# Add the layer
folium.GeoJson(data=value['data']['features'][0]['geometry'], name="geojson").add_to(m)
folium.LayerControl().add_to(m)
m

Related

StackingCVRegressor feature_name mismatch error

I'm trying to use StackingCV Regressor to increase the accuracy of my model. Model:
stack_gen = StackingCVRegressor(regressors = (xgb, gb, lin_reg, ridge, lasso),
meta_regressor = xgb,
use_features_in_secondary = True)
I'm able to fit the model using
stack_gen.fit(X_train, y_train)
However when I go to predict:
stack_gen.predict(X_test)
I get the error feature_names mismatch. Both the testing and training dataframes are the same size. They only differ by the amount of rows they have and I have previously fitted ML algorithms before with no issue. This only occurs when I attempt to stack. Confused on what the issue is with my code.
Error:
ValueError: feature_names mismatch: ['f0', 'f1', 'f2', 'f3', 'f4', 'f5', 'f6', 'f7', 'f8', 'f9', 'f10', 'f11', 'f12', 'f13', 'f14', 'f15', 'f16', 'f17', 'f18', 'f19', 'f20', 'f21', 'f22', 'f23', 'f24', 'f25', 'f26', 'f27', 'f28', 'f29', 'f30', 'f31', 'f32', 'f33', 'f34', 'f35', 'f36', 'f37', 'f38', 'f39', 'f40', 'f41', 'f42', 'f43', 'f44', 'f45', 'f46', 'f47', 'f48', 'f49', 'f50', 'f51', 'f52', 'f53', 'f54', 'f55', 'f56', 'f57', 'f58', 'f59', 'f60', 'f61', 'f62', 'f63', 'f64', 'f65', 'f66', 'f67', 'f68', 'f69', 'f70', 'f71', 'f72', 'f73', 'f74', 'f75', 'f76', 'f77', 'f78', 'f79', 'f80', 'f81', 'f82', 'f83', 'f84', 'f85', 'f86', 'f87', 'f88', 'f89', 'f90', 'f91', 'f92', 'f93', 'f94', 'f95', 'f96', 'f97', 'f98', 'f99', 'f100', 'f101', 'f102', 'f103', 'f104', 'f105', 'f106', 'f107', 'f108', 'f109', 'f110', 'f111', 'f112', 'f113', 'f114', 'f115', 'f116'] ['acousticness', 'danceability', 'duration_ms', 'energy', 'explicit', 'instrumentalness', 'liveness', 'loudness', 'speechiness', 'tempo', 'valence', 'year_1921', 'year_1922', 'year_1923', 'year_1924', 'year_1925', 'year_1926', 'year_1927', 'year_1928', 'year_1929', 'year_1930', 'year_1931', 'year_1932', 'year_1933', 'year_1934', 'year_1935', 'year_1936', 'year_1937', 'year_1938', 'year_1939', 'year_1940', 'year_1941', 'year_1942', 'year_1943', 'year_1944', 'year_1945', 'year_1946', 'year_1947', 'year_1948', 'year_1949', 'year_1950', 'year_1951', 'year_1952', 'year_1953', 'year_1954', 'year_1955', 'year_1956', 'year_1957', 'year_1958', 'year_1959', 'year_1960', 'year_1961', 'year_1962', 'year_1963', 'year_1964', 'year_1965', 'year_1966', 'year_1967', 'year_1968', 'year_1969', 'year_1970', 'year_1971', 'year_1972', 'year_1973', 'year_1974', 'year_1975', 'year_1976', 'year_1977', 'year_1978', 'year_1979', 'year_1980', 'year_1981', 'year_1982', 'year_1983', 'year_1984', 'year_1985', 'year_1986', 'year_1987', 'year_1988', 'year_1989', 'year_1990', 'year_1991', 'year_1992', 'year_1993', 'year_1994', 'year_1995', 'year_1996', 'year_1997', 'year_1998', 'year_1999', 'year_2000', 'year_2001', 'year_2002', 'year_2003', 'year_2004', 'year_2005', 'year_2006', 'year_2007', 'year_2008', 'year_2009', 'year_2010', 'year_2011', 'year_2012', 'year_2013', 'year_2014', 'year_2015', 'year_2016', 'year_2017', 'year_2018', 'year_2019', 'year_2020', 'class_average', 'class_highly popular', 'class_low interest', 'class_no interest', 'class_popular', 'class_top hit']
expected f91, f104, f98, f13, f93, f107, f5, f32, f17, f33, f40, f80, f20, f68, f54, f23, f56, f10, f1, f86, f84, f60, f66, f88, f28, f100, f14, f82, f36, f99, f26, f37, f70, f113, f69, f39, f22, f11, f78, f71, f3, f94, f92, f53, f106, f29, f24, f114, f87, f95, f62, f76, f111, f42, f72, f101, f105, f73, f35, f48, f109, f46, f43, f8, f85, f9, f30, f21, f59, f89, f90, f34, f15, f18, f25, f61, f64, f74, f112, f77, f44, f102, f19, f51, f2, f75, f81, f50, f41, f57, f52, f65, f79, f55, f47, f58, f12, f115, f31, f45, f67, f83, f97, f6, f38, f116, f108, f49, f103, f7, f110, f63, f16, f4, f0, f27, f96 in input data
training data did not have the following fields: year_1960, year_2020, year_1933, liveness, class_top hit, year_1992, year_1978, year_1938, year_1949, explicit, year_1952, year_2005, year_1972, year_1986, year_1940, year_2009, loudness, tempo, year_1947, year_2008, year_1975, year_1977, year_2012, year_1955, year_1979, speechiness, year_1939, year_2017, year_2018, year_1981, year_1942, year_1984, year_1968, instrumentalness, valence, year_2015, year_2016, year_2019, year_1948, year_1997, year_1995, year_1926, class_low interest, year_1925, year_2004, year_1998, year_1921, year_1945, year_2013, year_2014, class_average, year_1973, year_1946, year_1990, year_1924, year_1996, year_1993, year_2011, year_2006, year_1950, year_1943, danceability, year_1923, year_1961, year_1932, energy, year_1989, year_1935, year_1922, duration_ms, year_2002, year_1983, year_1980, year_1957, year_1963, year_1956, year_1962, year_1982, year_1999, year_1965, year_1941, year_1985, year_1974, year_1937, year_2000, year_1928, year_1944, year_2001, year_1987, year_1959, year_1967, year_1936, class_highly popular, year_1931, year_1934, year_1953, year_1964, year_1988, year_1927, year_1971, year_1966, year_1970, year_2003, year_2010, year_1930, year_1991, class_no interest, year_1958, year_1969, year_1954, year_1929, year_1951, class_popular, year_1994, acousticness, year_1976, year_2007
However, the columns it specifies I have in both my training and testing dataset..
I figured it out. My columns were being randomized in the algorithm. Using:
X_train.values & X_test.values solved the issue for me.

Matplotlib Auto Annotate max doesn't annotate and pushes chart off page

Hello I'm trying to auto annotate matplotlib chart.
I've manage to create it in a way that that doesn't give me any errors when I run it.
However, it doesn't plot the annotation and as I'm plotting in jupyter notebooks it pushes the plot right off the page.
The result I'm looking for is an automatically assigning annotation pointing to the max number in the series ppc_rolling_7d on the chart.
I'm kinda out of ideas as to what has happened here.
example data:
ppc_data = pd.DataFrame({
'Day':['2018-08-31', '2018-09-01', '2018-09-02', '2018-09-03',
'2018-09-04', '2018-09-05', '2018-09-06', '2018-09-07',
'2018-09-08', '2018-09-09', '2018-09-10', '2018-09-11',
'2018-09-12', '2018-09-13', '2018-09-14', '2018-09-15',
'2018-09-16', '2018-09-17', '2018-09-18', '2018-09-19',
'2018-09-20', '2018-09-21', '2018-09-22', '2018-09-23',
'2018-09-24', '2018-09-25', '2018-09-26', '2018-09-27',
'2018-09-28', '2018-09-29', '2018-09-30', '2018-10-01',
'2018-10-02', '2018-10-03', '2018-10-04', '2018-10-05',
'2018-10-06', '2018-10-07', '2018-10-08', '2018-10-09',
'2018-10-10', '2018-10-11', '2018-10-12', '2018-10-13',
'2018-10-14', '2018-10-15', '2018-10-16', '2018-10-17',
'2018-10-18', '2018-10-19', '2018-10-20', '2018-10-21',
'2018-10-22', '2018-10-23', '2018-10-24', '2018-10-25',
'2018-10-26', '2018-10-27', '2018-10-28', '2018-10-29',
'2018-10-30', '2018-10-31', '2018-11-01', '2018-11-02',
'2018-11-03', '2018-11-04', '2018-11-05', '2018-11-06',
'2018-11-07', '2018-11-08', '2018-11-09', '2018-11-10',
'2018-11-11', '2018-11-12', '2018-11-13', '2018-11-14',
'2018-11-15', '2018-11-16', '2018-11-17', '2018-11-18',
'2018-11-19', '2018-11-20', '2018-11-21', '2018-11-22',
'2018-11-23', '2018-11-24', '2018-11-25', '2018-11-26',
'2018-11-27', '2018-11-28', '2018-11-29', '2018-11-30',
'2018-12-01', '2018-12-02', '2018-12-03', '2018-12-04',
'2018-12-05', '2018-12-06', '2018-12-07', '2018-12-08'],
'Cost' : [1105.8097834013993, 1035.8355715930172, 2335.4700418958632,
655.0721024605979, 1154.3067936459986, 2275.8927050269917,
174.47816810392712,1606.0865381579742,973.1285739075876,
677.3734705782231,2381.149891233519, 1137.840620239881,
673.0575320194132, 1969.3783478235364, 1667.3405411738886,
1365.707089062391, 1686.492803446683, 1613.2530220414621,
2275.475164597224, 1593.9382082221036, 1278.8267306408893,
1342.2964464944962, 863.9840442789089, 289.34425736432837,
15.219941807702485, 1595.2327617943374, 1592.8333476628231,
961.5931139385652, 703.2690737772505, 312.9730830647801,
2105.920303495205, 707.710807657391, 873.7377744639931,
152.51387772605813, 1292.4027169055073, 1142.7323830723421,
2400.462099397225, 2027.5730000421765, 2380.127923249452,
370.97680360266463, 978.7472607817784, 144.50724935561453,
1257.3962926696906, 339.44922335906256, 989.3364341529344,
1274.7020560588671, 1697.9640365081489, 81.00819304765376,
528.9126509191693, 893.839100786781, 1778.7263797734338,
1388.1976452584615, 533.7823940180391, 1390.507110740847,
1582.8069647428326, 2058.124928605663, 1456.0037174730746,
315.93672830017414,488.9620970966599, 2020.6125475658266,
1358.8988386729175,1967.1442608919235,436.40540549351783,
2090.41730824453,2114.3435803364277,2235.719648814769,
1773.3190866160382,2372.165649889117, 1186.850504563462,
864.4092140750176, 772.6148714908818,1749.9856862684244,
802.1475898419487, 1013.3410373277948, 1604.4137362997474,
1880.084707526689, 1823.9691856540412,550.6041906641643,
75.26104973616485, 819.9409527114842, 2272.8529542934198,
1836.7071931445969,1491.3728333359875, 1807.2130424285615,
2378.1185581431337,1434.1809462567153,296.49945129452675,
2025.2054514729998,2346.234514785023, 2438.058561262957,
277.36529451533386, 1212.541281523483,2005.258496330315,
2053.7325650486177,2076.001012737591, 2245.606468047353,
2493.336539619115,1116.075112703116,319.54750552662733,
648.633853658328]}
).set_index('Day')
ppc_data.index = pd.to_datetime(ppc_data.index)
ppc_weekly = ppc_data['Cost'].resample('W').mean()
ppc_rolling_7d = ppc_data['Cost'].rolling(window=7, center=True).mean()
ax = fig.add_subplot(111)
figsize = (15,8)
ppc_data['Cost'].plot(figsize=figsize,
alpha=.5,
marker='.',
linestyle='-',
linewidth=0.5,
label='Daily'
)
ppc_weekly.plot(figsize=figsize,
marker='x',
markersize=8,
linestyle='-',
label='Weekly Mean Resample'
)
ppc_rolling_7d.plot(figsize=figsize,
marker='o',
linestyle='-',
label='7-d Rolling Mean'
)
max_value = ppc_rolling_7d.max()
max_value_index = [i for i, j in enumerate(ppc_rolling_7) if j == max_value]
#Create ax customatisations
ax.annotate('Lots of Pageviews but few clicks',
xy=(max_value_index[0],max_value),
xytext=(max_value_index[0],max_value),
arrowprops=dict(facecolor='cyan', #colour
shrink=0.05, #length of arrow
lw=1, #line width
ec='magenta', #boarder colour
zorder=1)) #layering order of annotation
#Global Plot settings
plt.title('COMPARE: Daily, Weekly Mean, 7-d Rolling Mean ') # set chart name
fig.legend() # set the legend
#display the charts
plt.show()
Any suggestions to what could be the problem are welcome.
Thanks to ImportanceOfBeingErnest who commented with the answer.
Using idxmax() will quickly find the index of the max value.
x = ppc_rolling_7d.idxmax(); y = ppc_rolling_7d.max()

Return value from list based on value being between 2 other list elements

I have a project I am working on that requires me to place items in predefined price tiers based on the value being pulled from an excel file. I have everything else worked out in my script except this last piece.
What I want to be able to do is build a list of lists (not stuck on the data structure if there is a better/more efficient option), check to see if the value is between i[0] and i[1] and return i[2].
Example would be:
my_value = 22.99
[[0],[24.99],['0-24.99'],[25,49.99,'25-49.99]......]
Desired output: '0-24.99'
Edit:
Now that I am back to my computer, I've written out the code to try and pull this off.
These functions are used for a calculation and to match the tier.
#define functions
#calculate Eligible Average Selling Price
def asp(x,y):
if float(y)==0:
return 0
else:
return float(x)/float(y)
#Search Tiers Dictionary and return undefined if tier does not exist
def inTier(x,y,z):
for t in Tiers[x]:
if float(t[0]) <= asp(y,z) <= float(t[1]):
return t[2]
else:
return 'Tier Undefined'
Here is the dictionary I am looping through to match the tier.
Tiers= {'Desktop':[[0, 24.99, '0-24.99'],[25, 49.99, '25-49.99'],[50, 74.99, '50-74.99'],[75, 99.99, '75-99.99'],[100, 124.99, '100-124.99'],[125, 149.99, '125-149.99'],[150, 199.99, '150-199.99'],[200, 249.99, '200-249.99'],[250, 299.99, '250-299.99'],[300, 499.99, '300-499.99'],[500, 749.99, '500-749.99'],[750, 999.99, '750-999.99'],[1000, 1999.99, '1000-1999.99'],[2000, 2999.99, '2000-2999.99'],[3000, 9999.99, '3000-9999.99']],'Chair':[[0, 24.99, '0-24.99'],[25, 49.99, '25-49.99'],[50, 74.99, '50-74.99'],[75, 99.99, '75-99.99'],[100, 124.99, '100-124.99'],[125, 149.99, '125-149.99'],[150, 199.99, '150-199.99'],[200, 249.99, '200-249.99'],[250, 299.99, '250-299.99'],[300, 499.99, '300-499.99'],[500, 749.99, '500-749.99'],[750, 999.99, '750-999.99'],[1000, 1999.99, '1000-1999.99'],[2000, 2999.99, '2000-2999.99'],[3000, 9999.99, '3000-9999.99']],'Gear':[[0, 9.99, '0-9.99'],[10, 24.99, '10-24.99'],[25, 49.99, '25-49.99'],[50, 74.99, '50-74.99'],[75, 99.99, '75-99.99'],[100, 124.99, '100-124.99'],[125, 149.99, '125-149.99'],[150, 199.99, '150-199.99'],[200, 249.99, '200-249.99'],[250, 299.99, '250-299.99'],[300, 349.99, '300-349.99'],[350, 399.99, '350-399.99'],[400, 499.99, '400-499.99'],[500, 749.99, '500-749.99'],[750, 999.99, '750-999.99'],[1000, 1999.99, '1000-1999.99'],[2000, 2999.99, '2000-2999.99'],[3000, 9999.99, '3000-9999.99']],'Laptop':[[0, 49.99, '0-49.99'],[50, 99.99, '50-99.99'],[100, 149.99, '100-149.99'],[150, 199.99, '150-199.99'],[200, 249.99, '200-249.99'],[250, 299.99, '250-299.99'],[300, 349.99, '300-349.99'],[350, 399.99, '350-399.99'],[400, 449.99, '400-449.99'],[450, 549.99, '450-549.99'],[550, 649.99, '550-649.99'],[650, 749.99, '650-749.99'],[750, 999.99, '750-999.99'],[1000, 4999.99, '1000-1999.99'],[2000, 6999.99, '2000-6999.99']],'Printer':[[0, 24.99, '0-24.99'],[25, 49.99, '25-49.99'],[50, 74.99, '50-74.99'],[75, 99.99, '75-99.99'],[100, 124.99, '100-124.99'],[125, 149.99, '125-149.99'],[150, 199.99, '150-199.99'],[200, 249.99, '200-249.99'],[250, 299.99, '250-299.99'],[300, 499.99, '300-499.99'],[500, 749.99, '500-749.99'],[750, 999.99, '750-999.99'],[1000, 1999.99, '1000-1999.99'],[2000, 2999.99, '2000-2999.99'],[3000, 9999.99, '3000-9999.99']],'Tablet':[[0, 49.99, '0-49.99'],[50, 99.99, '50-99.99'],[100, 149.99, '100-149.99'],[150, 199.99, '150-199.99'],[200, 249.99, '200-249.99'],[250, 299.99, '250-299.99'],[300, 349.99, '300-349.99'],[350, 399.99, '350-399.99'],[400, 449.99, '400-449.99'],[450, 549.99, '450-549.99'],[550, 649.99, '550-649.99'],[650, 749.99, '650-749.99'],[750, 999.99, '750-999.99'],[1000, 1999.99, '1000-1999.99'],[2000, 4999.99, '2000-4999.99']]}
And here is where values are being evaluated from a list row into a list row
row=[row[0],row[1].split(" ")[1],row[2].split(" ")[1],int(re.findall(r'\d+', row[3])[0]),row[4],row[5],row[6],asp(row[5],row[6]),inTier(row[0],row[5],row[6])]
and an example row that is returning 'Tier Undefined':
['Gear', 'REGION 27 SOUTHEAST', 'DISTRICT 7 E ATL', 'LOGANVILLE GA (6852)', 'WNDA3100 RANGEMAX', '32.99', '1']
In general it seems like the only tiers that gets a positive match are the first in the list of lists Dictionary value.
I assume your list has a typo, and you meant to write:
tiers = [[0,24.99,'0-24.99'],[25,49.99,'25-49.99]......]
Then you just loop through them:
for tier in tiers:
if tier[0] <= my_value <= tier[1]:
selected_tier = tier[2]
break

List issues python

I am writing a broader algorithm then this, but I think this issue is the reason it is not working.
Here the troublesome snippet of code..
difcheck = []
count = 1
questionsneeded = 4
required_dif = ["Easy", "Hard", "Medium", "Easy"]
required_topics = ["Graphs", "Math", "Geometry", "Fun"]
availablelist = [("Graphs", "Easy"), ("Fun", "aasd"), ("Geometry", "Medium"), ("Math", "Easy")]
z = 0
answerlist = []
while z < questionsneeded:
difs = required_dif
topics = required_topics
for x in range(len(availablelist)):
if availablelist[x][0] in required_topics and availablelist[x][1] in required_dif :
difcheck.append(availablelist[x])
try:
required_dif.remove(availablelist[x][0])
required_topics.remove(availablelist[x][1])
except ValueError as exception:
continue
availablelist.append(availablelist[0])
answerlist.append(len(difcheck))
del availablelist[0]
print("availablelist ")
print(availablelist)
print("difcheck ")
print(difcheck)
z = z + 1
del availablelist[0]
del difcheck[:]
The code looks through the tuples in availablelist and compares tuple element 0 with every element in required_dif and tuple element 1 with every element in required_topics.
If both are found in both lists, the tuple will be added to difcheck.
It then repeats this until z = questionsneeded, tuples in available list SHOULD be shuffled everytime.
The output I get is
availablelist
[('Fun', 'aasd'), ('Geometry', 'Medium'), ('Math', 'Easy'), ('Graphs', 'Easy')]
difcheck
[('Graphs', 'Easy'), ('Geometry', 'Medium'), ('Math', 'Easy')]
availablelist
[('Math', 'Easy'), ('Graphs', 'Easy'), ('Geometry', 'Medium')]
difcheck
[('Geometry', 'Medium'), ('Math', 'Easy'), ('Graphs', 'Easy')]
availablelist
[('Geometry', 'Medium'), ('Graphs', 'Easy')]
difcheck
[('Graphs', 'Easy'), ('Geometry', 'Medium')]
availablelist
[('Graphs', 'Easy')]
difcheck
[('Graphs', 'Easy')]
The output I want is
availablelist
[("Graphs", "Easy"), ("Fun", "aasd"), ("Geometry", "Medium"), ("Math", "Easy")]
difcheck
[("Graphs", "Easy"), ("Fun", "aasd"), ("Geometry", "Medium"), ("Math", "Easy")]
availablelist
[("Fun", "aasd"), ("Geometry", "Medium"), ("Math", "Easy"), ("Graphs", "Easy")]
difcheck
[("Fun", "aasd"), ("Geometry", "Medium"), ("Math", "Easy"), ("Graphs", "Easy")]
availablelist
[("Geometry", "Medium"), ("Math", "Easy"), ("Graphs", "Easy"), ("Fun", "aasd")]
difcheck
[("Geometry", "Medium"), ("Math", "Easy"), ("Graphs", "Easy"), ("Fun", "aasd")]
availablelist
[("Math", "Easy"), ("Graphs", "Easy"), ("Fun", "aasd"), ("Geometry", "Medium")]
difcheck
[("Math", "Easy"), ("Graphs", "Easy"), ("Fun", "aasd"), ("Geometry", "Medium")]
In an instance where an element in required_topics or required_dif is not in a tuple in availablelist, it would not be added to difcheck. In this case, we have a perfect match so everything is added.
The problem is probably very obvious, but I've gone all hazy and cant see it.
This part looks backwards
required_dif.remove(availablelist[x][0])
required_topics.remove(availablelist[x][1])
I think it should be
required_dif.remove(availablelist[x][1])
required_topics.remove(availablelist[x][0])
Also, the reason your list keeps getting smaller is because you have one append and two deletes on each cycle through the list.
availablelist.append(availablelist[0]) # Add 1 item
answerlist.append(len(difcheck))
del availablelist[0] # Delete 1 item
print("availablelist ")
print(availablelist)
print("difcheck ")
print(difcheck)
z = z + 1
del availablelist[0] # Delete another item

Replace list using dictionary

Biological RNA:
rna = AGCACGUAGCUGACUGACUGA
protein_chart = {"UUU":"F", "UUC":"F", "UUA":"L", "UUG":"L",
"UCU":"S", "UCC":"s", "UCA":"S", "UCG":"S",
"UAU":"Y", "UAC":"Y", "UAA":"STOP", "UAG":"STOP",
"UGU":"C", "UGC":"C", "UGA":"STOP", "UGG":"W",
"CUU":"L", "CUC":"L", "CUA":"L", "CUG":"L",
"CCU":"P", "CCC":"P", "CCA":"P", "CCG":"P",
"CAU":"H", "CAC":"H", "CAA":"Q", "CAG":"Q",
"CGU":"R", "CGC":"R", "CGA":"R", "CGG":"R",
"AUU":"I", "AUC":"I", "AUA":"I", "AUG":"M",
"ACU":"T", "ACC":"T", "ACA":"T", "ACG":"T",
"AAU":"N", "AAC":"N", "AAA":"K", "AAG":"K",
"AGU":"S", "AGC":"S", "AGA":"R", "AGG":"R",
"GUU":"V", "GUC":"V", "GUA":"V", "GUG":"V",
"GCU":"A", "GCC":"A", "GCA":"A", "GCG":"A",
"GAU":"D", "GAC":"D", "GAA":"E", "GAG":"E",
"GGU":"G", "GGC":"G", "GGA":"G", "GGG":"G",}
I want to split the rna into groups of 3 and replace all of those items with their representative components from the "protein_chart" dictionary, but I can't seem to get it to work using other examples I found.
Help?
You can do it using join and slicing:
print(''.join(protein_chart[x] for x in [rna[y:y+3] for y in range(0, len(rna), 3)]))
You could use:
# Split the rna vector into chunks of three
rna = 'AGCACGUAGCUGACUGACUGA'
n = 3
rna_split = [rna[i:i+n] for i in range(0, len(rna), n)]
# Go through dictionary looking for entries and printing them
for dna_el in rna_split:
print(protein_chart[dna_el])

Categories