Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- list_df = []
- for num, elem in enumerate(df.index):
- d = json.loads(df['json'].loc[elem])
- reform = {}
- def get_Val(outerValue, outerKey, flag):
- for i, middle in enumerate(outerValue):
- for middleKey, middleValue in middle.items():
- if type(middleValue) == dict:
- for innerKey, innerValue in middleValue.items():
- if type(innerValue) == str and '{' in innerValue and '{' == innerValue[0]:
- for superinnerKey, superinnerValue in json.loads(innerValue).items():
- if flag==0:
- reform[(outerKey,middle.get('event', '0'), middleKey, innerKey, superinnerKey)] = superinnerValue
- else:
- reform[(outerKey, middle.get('event').get('event'), middleKey,innerKey, superinnerKey)] = superinnerValue
- else:
- if flag == 0:
- reform[(outerKey,middle.get('event', '0'), middleKey, innerKey,'0')] = innerValue
- else:
- reform[(outerKey,middle.get('event').get('event'), middleKey, '0', '0')] = middleValue
- else:
- if flag == 0:
- reform[(outerKey, middle.get('event', '0'), middleKey, '0', '0')] = middleValue
- else:
- reform[(outerKey,middle.get('event').get('event'), middleKey, '0', '0')] = middleValue
- #
- for outerKey, outerValue in d.items():
- if type(outerValue) == list:
- if outerKey == 'events':
- get_Val(outerValue, outerKey, 0)
- elif outerKey == 'invalid_events':
- get_Val(outerValue, outerKey, 1)
- else:
- reform[(outerKey,'0', '0', '0', '0')] = outerValue
- #reform = {(outerKey, innerKey): values for outerKey, innerDict in d.items() for innerKey, Dict in innerDict.items() for key, values in Dict}
- list_df.append(pd.DataFrame(reform, index=[num]))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement