vmamontov

proccesing_test_data

Nov 16th, 2021 (edited)
763
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.72 KB | None | 0 0
  1. from time import time
  2. import pandas as pd
  3.  
  4. start_time = time()
  5. # ссылка для скачивания тестовых данных:
  6. # nested_data.txt:'https://vk.com/doc207845555_618678979'
  7. path = 'd:\\tmp\\nested_data.txt'
  8. with open(path) as file:
  9.     text = file.readlines()
  10.  
  11. data = []
  12. for line in text:
  13.     d = line.index('=') # разделитель
  14.     key = line[0:d]
  15.     value = line[d+1:].strip().split(';')
  16.     data.append([key] + value)
  17.  
  18. df = pd.DataFrame(data)
  19. df.columns = ['key'] + [f'name_{x}' for x in range(1, df.shape[1])]
  20.  
  21. print(df.head())
  22. print('time:', time() - start_time)
  23.  
  24. # текст вот такого вида:
  25. # aaad=KA;G;NWA;L;P;NV;YCV;OZE;OOV;I;CI;O;A;SOS;F;AOV;SYY;LN;J;G
  26. # aaag=JYX;RDG;SQN;JV;GXB;RRW;QOU;HD;HNP;VE;MHX;ZNE;V;M;NVW;AF
  27. # aaAg=ORU;BYB;KGP;KUI;X;W;VLH;D;Y;AFQ;SH;EF;S;RRH;QQ;AME;E;KUH;ZEU;SJ;OHX;OHO;KK;S;OYO;F;H;WLJ;W;LF;CAD;Y
  28. # AAaK=SBF;B;M;GHB;WQ;C;M;JGT;IV;J;LJT;K;UD;D;CEX;LNO;V;KYN;LWN;FQJ;UEV;Y;V;QO;P;DO;SLQ;HVP;LQ;C;K;I;V;S;AZ;QY;CD;T;K;R;I;CL;IC;COX
  29. # AaAL=YVF;X;ROZ;TE;DK;MZK;BV;W;Z;JUU;U;E;U;J;JG;UZJ;Q;NNG;CB
  30. # AaBb=KNG;H;HHJ;XAU;J;Y;N;WDY;K;P;YJ;YDF;BL;H;W;LU;TI;UO;W;LK;N;HLT;G;X;V;NO;M;O;GXS;N;X;HP;BC
  31.  
  32. # преобразован в датафрейм:
  33. #     key name_1 name_2 name_3 name_4  ... name_61 name_62 name_63 name_64 name_65
  34. # 0  aaad     KA      G    NWA      L  ...    None    None    None    None    None
  35. # 1  aaag    JYX    RDG    SQN     JV  ...    None    None    None    None    None
  36. # 2  aaAg    ORU    BYB    KGP    KUI  ...    None    None    None    None    None
  37. # 3  AAaK    SBF      B      M    GHB  ...    None    None    None    None    None
  38. # 4  AaAL    YVF      X    ROZ     TE  ...    None    None    None    None    None
  39.  
Add Comment
Please, Sign In to add comment