Skip to main content

If you have to change a lot of arbitrary values which don't have a clear pattern, use Excel!

Project description

Quickly edit Pandas DataFrames and Series in Excel

Use this methods to quickly edit your DataFrame with MS Excel.
Of course, Pandas is a lot better than Excel, but if you have to change a lot of arbitrary values which don't have a clear pattern, a GUI is imho the best choice.

pip install a-pandas-ex-excel-edit 
    #Here is an example:

    import pandas as pd
    from a_pandas_ex_excel_edit import pd_add_excel_editor    

    #pd_add_excel_editor will add 2 new methods:  
    #pandas.Series.s_edit_in_excel
    #pandas.DataFrame.d_edit_in_excel
    pd_add_excel_editor()   

    dframe = pd.read_csv("https://raw.githubusercontent.com/pandas-dev/pandas/main/doc/data/titanic.csv")
    #Let's add a row with lists, a tough data type to handle
    dframe['list_in_columns'] = [[[1]*10]] * len(dframe)   

         PassengerId  Survived  ...  Embarked                   list_in_columns
0              1         0  ...         S  [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
1              2         1  ...         C  [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
2              3         1  ...         S  [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
3              4         1  ...         S  [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
4              5         0  ...         S  [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
..           ...       ...  ...       ...                               ...
886          887         0  ...         S  [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
887          888         1  ...         S  [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
888          889         0  ...         S  [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
889          890         1  ...         C  [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
890          891         0  ...         Q  [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
[891 rows x 13 columns]   

dframe.dtypes
Out[6]: 
PassengerId          int64
Survived             int64
Pclass               int64
Name                object
Sex                 object
Age                float64
SibSp                int64
Parch                int64
Ticket              object
Fare               float64
Cabin               object
Embarked            object
list_in_columns     object
dtype: object    

df = dframe.d_edit_in_excel() #DataFrames   

Out[7]: 
     PassengerId  Survived  ...  Embarked                       list_in_columns
0          10001      9999  ...   NOT YET  [[1, 99999, 1, 1, 1, 1, 1, 1, 1, 1]]
1          10000         1  ...         C      [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
2           9999         1  ...   NOT YET      [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
3           9998         1  ...   NOT YET      [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
4           9997         0  ...         S      [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
..           ...       ...  ...       ...                                   ...
886          887         0  ...         S      [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
887          888         1  ...         S      [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
888          889         0  ...         S      [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
889          890         1  ...         C      [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
890          891         0  ...         Q      [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
[891 rows x 13 columns]

   df.dtypes
Out[9]: 
PassengerId          uint16
Survived             uint16
Pclass                uint8
Name                 string
Sex                category
Age                  object
SibSp                 uint8
Parch                 uint8
Ticket               object
Fare                float64
Cabin              category
Embarked           category
list_in_columns      object #you can even edit lists, dicts and tuples with Excel!
dtype: object    

df2 = dframe.Name.s_edit_in_excel() #Series

df2
Out[8]: 
0                                        HANNIBAL LECTOR
1      Cumings, Mrs. John Bradley (Florence Briggs Th...
2                                 Heikkinen, Miss. Laina
3           Futrelle, Mrs. Jacques Heath (Lily May Peel)
4                               Allen, Mr. William Henry
                             ...                        
886                                Montvila, Rev. Juozas
887                         Graham, Miss. Margaret Edith
888             Johnston, Miss. Catherine Helen "Carrie"
889                                Behr, Mr. Karl Howell
890                                  Dooley, Mr. Patrick
Name: Name, Length: 891, dtype: string    

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

a_pandas_ex_excel_edit-0.11.tar.gz (6.3 kB view details)

Uploaded Source

Built Distribution

a_pandas_ex_excel_edit-0.11-py3-none-any.whl (8.3 kB view details)

Uploaded Python 3

File details

Details for the file a_pandas_ex_excel_edit-0.11.tar.gz.

File metadata

  • Download URL: a_pandas_ex_excel_edit-0.11.tar.gz
  • Upload date:
  • Size: 6.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.10

File hashes

Hashes for a_pandas_ex_excel_edit-0.11.tar.gz
Algorithm Hash digest
SHA256 a8e0c9d347ffed41ab32cac7e49275ced8afa2e98b5c5e476e8989231f9b79df
MD5 32443dc1f9bcf84f41f4ff8ae3797478
BLAKE2b-256 0b284ebb6f6c405412751f2d1f72b7b06b5ab4cb120b405201670bc5fe7aac5b

See more details on using hashes here.

File details

Details for the file a_pandas_ex_excel_edit-0.11-py3-none-any.whl.

File metadata

File hashes

Hashes for a_pandas_ex_excel_edit-0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 34cfab0d0d60e096fdd9629672f5a85bfe3ec28df9322100b7fe425f910a9e30
MD5 159c150c6c51ba0122d724d018a916fc
BLAKE2b-256 1e231d2c355e40ae526a4ad089e6c47eb50ed650c69ec5eb35356a1ded509b6f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page