pandas_docstrings.py 906 B

123456789101112131415161718192021
  1. import os
  2. import pandas
  3. (pandas.read_json(DATA_FNAME, orient='index')
  4. .query('not deprecated')
  5. .assign(problems=lambda df: df.errors + df.warnings,
  6. section=lambda df: df['section'].astype('category'),
  7. type=lambda df: df['type'].astype('category'),
  8. docstring_length=lambda df: df['docstring'].str.len())
  9. .explode('problems')
  10. .pipe(lambda df: df.join(df['problems'].apply(pandas.Series)
  11. .rename(columns={0: 'code',
  12. 1: 'message'})))
  13. .assign(code=lambda df: df['code'].astype('category'))
  14. .loc[:, ['docstring_length', 'section', 'type', 'code', 'message']]
  15. .to_hdf(os.path.join('data', 'docstring_errors_pandas023.hd5'),
  16. key='main',
  17. mode='w',
  18. format='table'))