UgoDonini

CreaDataFramePandasConPython

Dec 5th, 2021 (edited)
604
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. # IMPORTO I MODULI CHE USERò IN QUESTO SCRIPT
  2.  
  3. import pandas as pd
  4. from pprint import pprint
  5. from tabulate import tabulate
  6. from IPython.display import display
  7. import pickle as pik # andare in https://pypi.org/project/pypickle/ e copiare pip install ....
  8. import os
  9.  
  10. # per comodità rinomino le funzioni che userò frequentemente
  11. p=print
  12. pp=pprint
  13. DF=pd.DataFrame
  14. D=display
  15. S=os.system
  16.  
  17. # creo la funzione ptab che formatta loutput di print di dataframe
  18. def ptab(df): # per print di df formattato
  19.     p(tabulate(df, headers='keys', tablefmt='psql'))
  20.     return
  21. S('cls')
  22. # creating an empty Dataframe
  23. header=['Nome','Italiano','Filosofia']
  24. df0= DF(columns=header)
  25. df0.loc[0,:]='NaN'
  26.  
  27. # creo  dizionario python che utilizzerò per creare DataFram pandas
  28. dct ={
  29. 'Nome'    : ['Anna','Silvia','Viola','Michele'],
  30. 'Italiano' : [8,7,9,10],
  31. 'Filosofia': [5,7,4,9]
  32. }
  33.  
  34. # creo lista python che utilizzerò per creare DataFram pandas
  35. lst=[['Anna','Silvia','Viola','Michele'],[8,7,9,10],[5,7,4,9]]
  36.  
  37. # creo DataFrame da dizionario
  38. df1 = DF(dct)
  39.  
  40. # creo dataframe da lista
  41. df2=DF(lst,index=['Nome','Italiano','Filosofia'],columns=['STUD1','STUD2','STUD3','STUD4'])
  42. # quindi  utilizzando una lista  di liste: ogni lista è una riga.
  43. # Bisogna quindi creare index e columns. Se non si indica columns ogni colonna viene numerata da 0 a n (opzione zero)
  44.  
  45. # con.T cambio orientamento dataframe axis=0 diventa axis = 1  con lo scambio automatico di index e columns
  46. df3=DF(lst).T;df3.columns=['Nome','Italiano','Filosofia']
  47.  
  48. # attuo lo scambio di axis=0 con axis=1 da df2
  49. df4=df2.T# cambio orientamento righe colonne
  50.  
  51. # display empty Dataframe    ########################
  52. p('\n\t\tdisplay di Dataframe vuoto')
  53. D(df0)
  54.  
  55. # display dict
  56. p('\n\t\tdisplay di dizionario')
  57. pp(dct)
  58. # displaying the DataFrame from dict
  59. p('\n\t\tDataframe ottenuto da dizionario')
  60. D(df1)
  61.  
  62. # displaying the DataFrame from lst
  63. p('\n\t\tDisplay di lista')
  64. pp(lst)
  65. p('\n\t\tDataframe ottenuto da lista di liste')
  66. D(df2)
  67.  
  68. # displaying the DataFrame from lst
  69. p('\n\t\tDisplay di lista')
  70. pp(lst)
  71. p('\n\t\tDataframe con rotazione e scambio di axis ')
  72. D(df3)
  73.  
  74. # displaying the DataFrame from lst
  75. p('\n\t\tDisplay di lista')
  76. pp(lst)
  77. p('\n\t\tDataframe con rotazione e scambio di axis : altro metodo')
  78. D(df4)
  79.  
  80. input('\n\n\t\tMi fermo per fare vedere l\'output. Un tasto per chiudere ')  
  81.  
RAW Paste Data