Advertisement
Guest User

Untitled

a guest
Mar 22nd, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.26 KB | None | 0 0
  1. list_df = []
  2. for num, elem in enumerate(df.index):
  3. d = json.loads(df['json'].loc[elem])
  4. reform = {}
  5. def get_Val(outerValue, outerKey, flag):
  6. for i, middle in enumerate(outerValue):
  7. for middleKey, middleValue in middle.items():
  8. if type(middleValue) == dict:
  9. for innerKey, innerValue in middleValue.items():
  10. if type(innerValue) == str and '{' in innerValue and '{' == innerValue[0]:
  11. for superinnerKey, superinnerValue in json.loads(innerValue).items():
  12. if flag==0:
  13. reform[(outerKey,middle.get('event', '0'), middleKey, innerKey, superinnerKey)] = superinnerValue
  14. else:
  15. reform[(outerKey, middle.get('event').get('event'), middleKey,innerKey, superinnerKey)] = superinnerValue
  16. else:
  17. if flag == 0:
  18. reform[(outerKey,middle.get('event', '0'), middleKey, innerKey,'0')] = innerValue
  19. else:
  20. reform[(outerKey,middle.get('event').get('event'), middleKey, '0', '0')] = middleValue
  21.  
  22. else:
  23. if flag == 0:
  24. reform[(outerKey, middle.get('event', '0'), middleKey, '0', '0')] = middleValue
  25. else:
  26. reform[(outerKey,middle.get('event').get('event'), middleKey, '0', '0')] = middleValue
  27. #
  28. for outerKey, outerValue in d.items():
  29. if type(outerValue) == list:
  30. if outerKey == 'events':
  31. get_Val(outerValue, outerKey, 0)
  32. elif outerKey == 'invalid_events':
  33. get_Val(outerValue, outerKey, 1)
  34. else:
  35. reform[(outerKey,'0', '0', '0', '0')] = outerValue
  36. #reform = {(outerKey, innerKey): values for outerKey, innerDict in d.items() for innerKey, Dict in innerDict.items() for key, values in Dict}
  37. list_df.append(pd.DataFrame(reform, index=[num]))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement