Pandas: 古い文字列フォーマット構文をf文字列に置き換えます

作成日 2019年11月11日  ·  137コメント  ·  ソース: pandas-dev/pandas

Python 3.5はサポートされなくなったため、古い.format() (および明らかに%形式)の代わりに新しいf文字列を使用できるようになりました。

ノート:

  • この問題をプルリクエストの本文メッセージにリンクすることを忘れないでください。プルリクエストの本文メッセージにこのhttps://github.com/pandas-dev/pandas/issues/29547を貼り付けるだけです。

  • 変更したファイルのいずれかが#29886に関連している場合は、プルリクエストもその問題にリンクしてください。プルリクエストの本文メッセージにもこのhttps://github.com/pandas-dev/pandas/issues/29886を貼り付けてください。

  • 二重の仕事をしないように、あなたが取り組む予定のことをコメントしてください。

  • 完了としてマークする必要のあるファイルがマークされていない場合は、コメントしてお知らせください。


pandasディレクトリでまだ修正が必要なファイルを確認するには:

grep -l -R '%s'  --include=*.{py,pyx} pandas/
grep -l -R '%d' --include=*.{py,pyx} pandas/
grep -l -R '\.format(' --include=*.{py,pyx} pandas/

上記のすべては、1つのライナーとしても使用できます。

grep -l -R -e '%s' -e '%d' -e '\.format(' --include=*.{py,pyx} pandas/
ヒント:

オカレンスの行番号を確認する場合は、 -l-nに置き換えます。
例えば:

grep -n -R '%s' --include=*.{py,pyx} pandas/

現在のリストは次のとおりです。

  • [] pandas / compat / pickle_compat.py

  • [] pandas / _config / config.py

  • [] pandas / core / arrays / datetimelike.py

  • [] pandas / core / arrays / datetimes.py

  • [] pandas / core / arrays / integer.py

  • []パンダ/コア/配列/period.py

  • []パンダ/コア/コンピュテーション/pytables.py

  • [] pandas / core / config_init.py

  • [] pandas / core / frame.py

  • [] pandas / core / generic.py

  • [] pandas / core / groupby / generic.py

  • [] pandas / core / groupby / groupby.py

  • [] pandas / core / indexes / base.py

  • []パンダ/コア/インデックス/multi.py

  • [] pandas / core / indexes / range.py

  • [] pandas / core / ops / docstrings.py

  • [] pandas / core / ops / __ init__.py

  • [] pandas / core / reshape / merge.py

  • [] pandas / core / tools / datetimes.py

  • []パンダ/io/formats/css.py

  • []パンダ/io/formats/excel.py

  • []パンダ/io/formats/format.py

  • [] pandas / io / formats / html.py

  • []パンダ/io/formats/info.py

  • []パンダ/io/formats/latex.py

  • []パンダ/io/formats/printing.py

  • []パンダ/io/formats/style.py

  • [] pandas / io / parsers.py

  • [] pandas / io / pytables.py

  • [] pandas / io / sas / sas_xport.py

  • [] pandas / io / stata.py

  • [] pandas / _libs / tslibs / c_timestamp.pyx

  • []パンダ/_libs/tslibs/frequencies.pyx

  • [] pandas / _libs / tslibs / parsing.pyx

  • [] pandas / _libs / tslibs / period.pyx

  • [] pandas / _libs / tslibs / strptime.pyx

  • [] pandas / _libs / tslibs / timedeltas.pyx

  • [] pandas / plotting / _matplotlib / converter.py

  • [] pandas / tests / arrays / category / test_operators.py

  • [] pandas / tests / arrays / test_datetimelike.py

  • [] pandas / tests / dtypes / test_dtypes.py

  • [] pandas / tests / extension / base / setitem.py

  • [] pandas / tests / frame / test_constructors.py

  • [] pandas / tests / frame / test_missing.py

  • [] pandas / tests / frame / test_to_csv.py

  • []パンダ/テスト/groupby/aggregate/test_other.py

  • [] pandas / tests / indexes / datetimes / test_date_range.py

  • [] pandas / tests / indexes / datetimes / test_datetime.py

  • [] pandas / tests / indexes / datetimes / test_formats.py

  • [] pandas / tests / indexes / datetimes / test_partial_slicing.py

  • [] pandas / tests / indexes / interval / test_constructors.py

  • [] pandas / tests / indexes / interval / test_interval.py

  • [] pandas / tests / indexes / multi / test_format.py

  • [] pandas / tests / indexes / period / test_formats.py

  • [] pandas / tests / indexes / test_base.py

  • [] pandas / tests / indexes / timedeltas / test_timedelta.py

  • [] pandas / tests / indexing / test_categorical.py

  • [] pandas / tests / indexing / test_coercion.py

  • [] pandas / tests / io / excel / test_openpyxl.py

  • [] pandas / tests / io / excel / test_writers.py

  • [] pandas / tests / io / formats / test_format.py

  • [] pandas / tests / io / formats / test_printing.py

  • [] pandas / tests / io / formats / test_style.py

  • [] pandas / tests / io / formats / test_to_csv.py

  • [] pandas / tests / io / formats / test_to_html.py

  • []パンダ/tests/io/formats/test_to_latex.py

  • [] pandas / tests / io / parser / test_compression.py

  • [] pandas / tests / io / parser / test_encoding.py

  • [] pandas / tests / io / parser / test_header.py

  • [] pandas / tests / io / parser / test_parse_dates.py

  • [] pandas / tests / io / parser / test_usecols.py

  • [] pandas / tests / io / test_html.py

  • [] pandas / tests / io / test_sql.py

  • [] pandas / tests / io / test_stata.py

  • []パンダ/tests/reductions/test_reductions.py

  • [] pandas / tests / reshape / test_concat.py

  • [] pandas / tests / reshape / test_melt.py

  • []パンダ/テスト/スカラー/期間/test_period.py

  • [] pandas / tests / scalar / timedelta / test_timedelta.py

  • []パンダ/テスト/スカラー/タイムスタンプ/test_constructors.py

  • [] pandas / tests / series / indexing / test_numeric.py

  • [] pandas / tests / series / indexing / test_take.py

  • [] pandas / tests / series / indexing / test_where.py

  • [] pandas / tests / series / methods / test_rename.py

  • [] pandas / tests / series / test_api.py

  • [] pandas / tests / series / test_constructors.py

  • [] pandas / tests / series / test_datetime_values.py

  • [] pandas / tests / series / test_repr.py

  • [] pandas / tests / test_strings.py

  • [] pandas / tests / tools / test_to_datetime.py

  • []パンダ/テスト/tseries/holiday/test_calendar.py

  • []パンダ/テスト/tseries/holiday/test_holiday.py

  • [] pandas / tests / tslibs / test_parsing.py

  • [] pandas / tests / util / test_assert_frame_equal.py

  • [] pandas / tseries / Frequencies.py

  • [] pandas / util / _decorators.py

  • [] pandas / util / _test_decorators.py

  • [] pandas / util / _validators.py

  • [] pandas / _version.py


ノート:

ファイルが絶えず移動/名前変更されると、リストが変更される場合があります。


このPRからの組み込みファイルとコマンド。

Style good first issue

最も参考になるコメント

このhttps://github.com/pandas-dev/pandas/pull/32007で私の最初のプルリクエストを追加しました:
pandas / tests / frame / test_to_csv.py

全てのコメント137件

私が取っている:

  • [x] pandas / _libs / groupby.pyx

  • [x] pandas / _libs / hashing.pyx

  • [x] pandas / _libs / index.pyx

  • [x] pandas / _libs / internals.pyx

  • [x]パンダ/_libs/interval.pyx

  • [x] pandas / _libs / lib.pyx

  • [x] pandas / _libs / ops.pyx

  • [x] pandas / _libs / parsers.pyx

  • [x]パンダ/_libs/reduction.pyx

  • [x] pandas / _libs / sparse.pyx

  • [x]パンダ/_libs/testing.pyx

  • [x] pandas / _libs / tslib.pyx

  • [x] pandas / _libs / window.pyx

私がもらう:

  • [x] pandas / tests / indexes / test_base.py
  • [x] pandas / tests / indexes / test_category.py
  • [x] pandas / tests / indexes / test_common.py
  • [x] pandas / tests / indexes / test_numeric.py

それでよければ、始めましょう!

こんにちは@MomIsBestFriendこの変換のためのツールをお勧めできますか? ざっと見てみると、次のようになりました。

  1. pyupgrade
  2. fstringify
  3. フライント

私はどちらも経験がありませんが、ここで非常に役立つ可能性があります

こんにちは@SaturnFromTitan 、私は個人的に時々 pyupgradeを使用しますが、ファイルに古い文字列形式がいくつか含まれている場合に限ります。 次に、変更を確認し、 pyupgradeで問題が発生した場合は修正します。

それらが多くのオカレンスを持つファイルである場合、私は手動で「複雑な」もの(たとえば'%.2f' % my_float )を探し、一般的なものを処理させます。通常は正しく処理されます。

また、一部の変更により、変更されたファイルがpep8と互換性がなくなるため、それも修正する必要があります。そうしないと、テストに合格しません。

次にかかります:

  • [x] pandas / compat / __init__。py

  • [x] pandas / compat / numpy / function.py

  • [x] pandas / compat / numpy / __ init__.py

  • [x] pandas / compat / _optional.py

私がもらう:

  • [x] pandas / core / reshape / concat.py
  • [x] pandas / core / reshape / melt.py
  • [] pandas / core / reshape / merge.py
  • [x]パンダ/コア/リシェイプ/ピボット.py
  • [x] pandas / core / reshape / reshape.py
  • [] pandas / core / reshape / tile.py

これをgood first issueとしてタグ付けすることについて、みんなはどう思いますか? ここにあるほとんどのファイルに適用されます。 行う必要のある変更は通常、ファイルごとに数行程度であり、変更を行う人は誰でも、コードの他の部分に影響を与えることについてあまり心配する必要はありません(実行される終了関数は同じであるため)。

#28926に似たセットアップを描いています。

f-stringの交換は次の場所に配置されます:

  • [x] pandas / core / groupby / generic.py
  • [x] pandas / core / groupby / groupby.py
  • [x] pandas / core / groupby / grouper.py
  • [x] pandas / core / groupby / ops.py

ref#29701

次にかかります:

  • [x]パンダ/_libs/tslibs/conversion.pyx

  • [x] pandas / _libs / tslibs / c_timestamp.pyx

  • [x] pandas / _libs / tslibs / fields.pyx

  • [x] pandas / _libs / tslibs / nattype.pyx

  • [x] pandas / _libs / tslibs / np_datetime.pyx

  • [x] pandas / _libs / tslibs / offsets.pyx

  • [x] pandas / _libs / tslibs / parsing.pyx

  • [x] pandas / _libs / tslibs / timestamps.pyx

  • [x] pandas / _libs / tslibs / timezones.pyx

  • [x] pandas / _libs / tslibs / tzconversion.pyx

私がもらう

  • [x]パンダ/プロット/_core.py
  • [x] pandas / plotting / _matplotlib / boxplot.py
  • [x] pandas / plotting / _matplotlib / converter.py
  • [x] pandas / plotting / _matplotlib / core.py
  • [x] pandas / plotting / _matplotlib / misc.py
  • [x] pandas / plotting / _matplotlib / style.py
  • [x] pandas / plotting / _matplotlib / timeseries.py
  • [x] pandas / plotting / _matplotlib / tools.py
  • [x]パンダ/プロット/_misc.py

ref#29781

私がもらう:

  • [x] pandas / core / reshape / concat.py
  • [x] pandas / core / reshape / melt.py
  • [] pandas / core / reshape / merge.py
  • [x]パンダ/コア/リシェイプ/ピボット.py
  • [x] pandas / core / reshape / reshape.py
  • [] pandas / core / reshape / tile.py

これをgood first issueとしてタグ付けすることについて、みんなはどう思いますか? ここにあるほとんどのファイルに適用されます。 行う必要のある変更は通常、ファイルごとに数行程度であり、変更を行う人は誰でも、コードの他の部分に影響を与えることについてあまり心配する必要はありません(実行される終了関数は同じであるため)。

#28926に似たセットアップを描いています。

それに応じてラベルを付けてください。 ありがとう

次のステップ:

  • [x]パンダ/ io / msgpack / _packer.pyx

  • [x]パンダ/ io / msgpack / _unpacker.pyx

  • [x]パンダ/ io / sas / sas.pyx

申し訳ありませんが、作業するファイルを指定するように求められていることに気づきました。 私はちょうど使用しています

grep -n -R -e '%s' -e '%d' -e'.format( '--include = *。{py、pyx} pandas /

古いフォーマットを見つけるため。 謝罪します

申し訳ありませんが、作業するファイルを指定するように求められていることに気づきました。 私はちょうど使用しています

@ForTimeBeingだから私は投稿を編集しました、あなたが気づいてくれてうれしいです:)

取り組んだことを投稿できますか? 誰かがコメントを検索した場合に備えて。

確かに、私は取った。

  • [x] pandas / tests / resample / test_datetime_index.py
  • [x] pandas / tests / resample / test_time_grouper.py
  • [x] pandas / tests / tseries / offsets / common.py
  • [x]パンダ/エラー/__init__.py
  • [x] pandas / tests / arrays / interval / test_ops.py
  • [x] pandas / tests / arrays / sparse / test_array.py
  • [x] pandas / tests / arrays / sparse / test_libsparse.py
  • [x] pandas / tests / extension / arrow / arrays.py
  • [x] pandas / tests / extension / base / Printing.py
  • [x] pandas / tests / extension / decimal / array.py
  • [x] pandas / tests / resample / test_datetime_index.py
  • [x] pandas / tests / resample / test_time_grouper.py
  • [x]パンダ/テスト/スカラー/test_nat.py
  • [x] pandas / tests / tseries / offsets / common.py

以下

  • [x] pandas / tseries / Frequencies.py

.formatはまだ存在し、grep検索に表示されますが、fstringに変更するリテラルはありません。 それを行う別の方法があるか、そのまま維持するかはわかりませんが、そのファイルではすべてのリテラルがfstringにスワップされています。

.formatはまだ存在し、grep検索に表示されますが、fstringに変更するリテラルはありません。 それを行う別の方法があるか、そのまま維持するかはわかりませんが、そのファイルではすべてのリテラルがfstringにスワップされています。

@ForTimeBeing
問題はありません:)
PRありがとうございます:)

私が取った

  • [x] pandas / core / window / common.py
  • [x] pandas / core / window / ewm.py
  • [x]パンダ/コア/ウィンドウ/expanding.py
  • [x] pandas / core / window / rolling.py

ref#29952

私がもらう:

  • [x] ci / print_skipped.py

  • [x] doc / make.py

  • [x] doc / sphinxext / announce.py

  • [x] doc / sphinxext / Contributors.py

作業中: 'pandas / core / dtypes / dtypes.py'

取った:

  • [x] pandas / core / arrays / base.py
  • [x] pandas / core / arrays / datetimelike.py
  • [x] pandas / core / arrays / datetimes.py
  • [x]パンダ/コア/配列/string_.py
  • [x] pandas / core / arrays / timedeltas.py
  • [x] pandas / core / common.py
  • [x]パンダ/コア/コンピュテーション/align.py
  • [x]パンダ/コア/コンピュテーション/engines.py
  • [x]パンダ/コア/コンピュテーション/eval.py
  • [x]パンダ/コア/computation/expressions.py
  • [x]パンダ/コア/コンピュテーション/expr.py
  • [x]パンダ/コア/コンピュテーション/ops.py
  • [x]パンダ/コア/コンピュテーション/pytables.py
  • [x]パンダ/コア/コンピュテーション/scope.py
  • [x] pandas / core / frame.py
  • [x] pandas / core / generic.py
  • [x]パンダ/コア/strings.py

参照:#30116、#30135、#30363

私がもらう:

  • [x] pandas / _libs / tslibs / Frequencies.pyx
  • [x] pandas / _libs / tslibs / period.pyx
  • [x] pandas / _libs / tslibs / strptime.pyx

事前定義された文字列に問題があります。 私は解決策を見つけましたが、それが正しいものかどうかはわかりません。
次のような事前定義された文字列がある状況を想像してみてください。
THE_MESSAGE = "引数付きのメッセージ。Arg1:{arg1}、Arg2:{arg2}。"
これは、次のように.format()で呼び出されます。
THE_MESSAGE.format(arg1_str、arg2_str)。

以下に説明する方法でラムダ関数を使用してこれを書き直すことはできますか?
THE_MESSAGE = lambda arg1、arg2:f "引数付きのメッセージ。Arg1:{arg1}、Arg2:{arg2}。"

とそれを呼び出す
THE_MESSAGE(arg1_str、arg2_str)?

私はそれがうまくいくことを知っていますが、それがこの問題に取り組むための最良の方法であるかどうかはわかりません:)

事前定義された文字列に問題があります。

私は完全に理解しています、 pep 498が説明するように:

通常の文字列はコンパイル時に連結され、f文字列は実行時に連結されます。

.format()の使用を削除し、他の文字列テンプレートを使用する方法を考える必要があります。

現時点で私が考えることができるのはstdlibからのstring.Templateだけですが、私は本当に知りません。

@jbrockmendel手伝ってくれませんか。

@MomIsBestFriendラムダ関数はこれにはやり過ぎだと思いますか?

@MomIsBestFriend私はこれがいくつかの.formatと一緒に暮らすことが行く方法である場合かもしれないと思います

@MomIsBestFriendラムダ関数はこれにはやり過ぎだと思いますか?

私は専門家にほど遠いので、開発者の1人に聞いてください。

取った

  • [x] pandas / core / accessor.py
  • [x]パンダ/コア/algorithms.py

参照番号30120

取った

  • [x] pandas / core / arrays / sparse / accessor.py
  • [x] pandas / core / arrays / sparse / array.py
  • [x] pandas / core / arrays / sparse / dtype.py
  • [x] pandas / core / arrays / sparse / scipy_sparse.py

参照番号30121

取った

  • [x] pandas / core / arrays / _ranges.py
  • [x] pandas / core / arrays / integer.py
  • [x]パンダ/コア/配列/interval.py
  • [x]パンダ/コア/アレイ/numpy_.py
  • [x]パンダ/コア/配列/period.py

参照番号30124

私がもらう

  • [x]パンダ/io/formats/css.py
  • [x]パンダ/io/formats/excel.py
  • [x]パンダ/io/formats/style.py

編集:
取る:

  • [x] pandas / util / _decorators.py
  • [x] pandas / util / _depr_module.py

  • [x] pandas / util / _doctools.py

  • [x] pandas / util / _print_versions.py

  • [x] pandas / util / _test_decorators.py

  • [x] pandas / util / _tester.py

  • [x] pandas / util / tests.py

  • [x] pandas / util / _validators.py

私がもらう

  • [] pandas / core / config_init.py
  • [x]パンダ/コア/construction.py
  • [x] pandas / core / dtypes / base.py
  • [x] pandas / core / dtypes / cast.py

ありがとう!

私がもらう:

pandas / tests / plotting / test_converter.py

pandas / tests / plotting / test_datetimelike.py

pandas / tests / plotting / test_series.py

私がもらう

  • [x]パンダ/コア/インデックス/accessors.py
  • [x] pandas / core / indexes / category.py
  • [x] pandas / core / indexes / datetimelike.py
  • [x] pandas / core / indexes / datetimes.py
  • [x]パンダ/コア/インデックス/frozen.py
  • [x]パンダ/コア/インデックス/interval.py
  • [x]パンダ/コア/インデックス/multi.py
  • [x]パンダ/コア/インデックス/numeric.py
  • [x] pandas / core / indexes / period.py
  • [x] pandas / core / indexes / range.py
  • [x] pandas / core / indexes / timedeltas.py

30273

こんにちは、 @ MomIsBestFriend

pandas / tests / plotting / test_converter.py

pandas / tests / plotting / test_datetimelike.py

pandas / tests / plotting / test_series.py

完了しました。 ありがとうございました。

こんにちは
私は取ることができます

  • [] pandas / core / dtypes / dtypes.py
  • [] pandas / core / dtypes / common.py

ありがとう

こんにちは、私がかかります

  • [x] setup.py
  • [x] pandas / _config / config.py
  • [x] pandas / _config / localization.py

ありがとう!

私が取った:

  • pandas/core/missing.py
  • pandas/core/nanops.py
  • pandas/tests/indexes/datetimes/test_partial_slicing.py

私のPRへのリンク: https

私は取り組みます:

  • [] pandas / core / arrays / base.py

ここに「良い創刊号」というタグがあるためです

私がもらう:

  • [] pandas / io / sql.py

  • [] pandas / io / stata.py

ありがとう!

やります:

  • [x] pandas / core / resample.py
  • [x] pandas / core / indexing.py
  • [x] pandas / core / internals / Construction.py
  • [x] pandas / core / internals / managers.py
  • [x] pandas / core / internals / blocks.py

撮りたい
プルリクエストを実行しました

  • [x] pandas / core / indexers.pyz

素晴らしい、常にパンダにチップインしたかった。 今後数週間で何を達成できるかがわかったら更新します...

私は取ることができます
pandas / _version.py

ジャンプする:

  • [] pandas / core / arrays / datetimelike.py
  • [x]パンダ/io/formats/printing.py
  • [x] pandas / tests / extension / list / array.py
  • [x] pandas / tests / indexes / datetimes / test_ops.py
  • [x] pandas / tests / indexes / multi / test_analytics.py

pandas / io / formats /csvs.pyを使用します

私が取っている:

  • [x] pandas / core / series.py(コードには昔ながらの文字列メソッドはなく、ドキュメントのみ)
  • [x] pandas / core / tools / datetimes.py(コードを変更し、12月25日までにテストしてプルリクエストを行います)

質問:古い学校の文字列フォーマットをAPIリファレンスに残す必要があるかどうかについての答えはありますか?

たとえば、 series.map()

 It also accepts a function:

        >>> s.map('I am a {}'.format)
        0       I am a cat
        1       I am a dog
        2       I am a nan
        3    I am a rabbit
        dtype: object

これをf-stringの例に置き換えると、次のようになります。

      >>> s.map(lambda x: f'I am a {x}')
        0       I am a cat
        1       I am a dog
        2       I am a nan
        3    I am a rabbit
        dtype: object

これは正確な置き換えではありません(f-stringは関数ではありません。ラムダを使用して、 'I am' .format()の正味の効果を複製する関数にします)。また、パッティングに関していくつかの厄介な問題が発生します。ドキュメントのいくつかのベストプラクティスではありません。

今のところ、このようなケースの処理方法に関するコミュニティの決定を待って、ドキュメントを範囲外として変更することを検討しています。

すでに完了しています(誰が行ったかはわかりません):
pandas / tests / arrays / interval / test_ops.py

私も取ります

  • [x]パンダ/テスト/スカラー/間隔/test_ops.py
  • [x]パンダ/テスト/コンピュテーション/test_eval.py
  • [x]パンダ/テスト/ dtypes / *
  • [x] pandas / tests / dtypes / cast / test_infer_dtype.py
  • [x] pandas / tests / dtypes / test_dtypes.py
  • [x] pandas / tests / dtypes / test_inference.py

質問:古い学校の文字列フォーマットをAPIリファレンスに残す必要があるかどうかについての答えはありますか?

cc @WillAyd @jreback

「昔ながらの文字列形式」が何であるかはわかりませんが、 .formatには、f文字列がカバーしないいくつかのユースケース(つまり、遅延パラメータ化)があるので、それがまだ存在することを確認してください。 Py27文字列形式の構文はどこにもあるべきではないと思いますが

私は取るでしょう:

  • [x] pandas / tests / io / formats / test_css.py
  • [x] pandas / tests / io / formats / test_format.py
  • [x] pandas / tests / io / formats / test_printing.py
  • [x] pandas / tests / io / formats / test_style.py
  • [x] pandas / tests / io / formats / test_to_csv.py
  • [x]パンダ/tests/io/formats/test_to_excel.py

私がもらう

  • [x] pandas / compat / pickle_compat.py
  • [x] pandas / _config / config.py
  • [x] pandas / core / arrays / boolean.py

#30601で、私は引き受けました

  • [x] pandas / io / excel / _base.py
  • [x] pandas / io / excel / _odfreader.py
  • [x] pandas / io / excel / _openpyxl.py
  • [x] pandas / io / excel / _util.py
  • [x] pandas / io / excel / _xlwt.py
  • [x] pandas / tests / generic / test_frame.py
  • [x] pandas / tests / generic / test_generic.py
  • [x] pandas / tests / generic / test_series.py

それでよければ、以下の2つのファイルから始めることができます。

  • [x] pandas / tests / base / test_conversion.py
  • [x] pandas / tests / base / test_ops.py

これらの変更は#30604で行われました

引き受ける:

  • [] pandas / core / ops / array_ops.py
  • [] pandas / core / ops / dispatch.py
  • [] pandas / core / ops / docstrings.py
  • [] pandas / core / ops / invalid.py
  • [] pandas / core / ops / methods.py
  • [] pandas / core / ops / roperator.py

PRでそのまま残されている.format古い意図された使用法に注意するための好ましい方法はありますか? 何かが良いユースケースであり、PRで見落とされていると(誤って)想定している場合

取りかかっている

  • [x]パンダ/テスト/groupby/aggregate/test_other.py
  • [x] pandas / tests / groupby / test_apply.py
  • [x] pandas / tests / groupby / test_bin_groupby.py
  • [x] pandas / tests / groupby / test_categorical.py
  • [x] pandas / tests / groupby / test_counting.py
  • [x] pandas / tests / groupby / test_value_counts.py
  • [x] pandas / tests / groupby / test_function.py
  • [x] pandas / tests / groupby / test_groupby.py
  • [x] pandas / tests / groupby / test_transform.py
  • [x] pandas / tests / groupby / test_whitelist.py

私がもらう

  • [X]スクリプト/validate_docstrings.py
  • [X] scripts / tests / test_validate_docstrings.py
  • [X] scripts / generate_pip_deps_from_conda.py
  • [X] scripts / download_wheels.py
  • [X]パンダ/tseries/holiday.py
  • [X] pandas / tests / window / test_window.py
  • [X] pandas / tests / util / test_validate_kwargs.py
  • [X] pandas / tests / util / test_validate_args.py

私は試してみたいと思います:

  • [x] pandas / tests / util / test_assert_almost_equal.py
  • [x] pandas / tests / util / test_assert_categorical_equal.py
  • [x] pandas / tests / util / test_assert_extension_array_equal.py
  • [x] pandas / tests / util / test_assert_frame_equal.py
  • [x] pandas / tests / util / test_assert_index_equal.py
  • [x] pandas / tests / util / test_assert_numpy_array_equal.py
  • [x] pandas / tests / util / test_validate_args_and_kwargs.py

私が取りたいのは:

  • [x]パンダ/コア/配列/period.py
  • [x] pandas / core / dtypes / common.py
  • [x] pandas / core / dtypes / dtypes.py
  • [x] pandas / core / frame.py

ありがとう@ HH-MWB

私が取る:

  • [] pandas / core / arrays / timedeltas.py

私は、内のコードをたくさん見つけ@Appender()使用している%フォーマット文字列に。 これらのコードは_shared_docsをテンプレートとして使用しています。これは主に/pandas/core/generic.pyで定義されており、複数のファイルにまたがって使用されています。

_shared_docs関連するすべてのフォーマットを置き換えたいと思います。 この変更により、多くのファイルを変更する必要がありますが、それらのファイル内の他のすべての文字列フォーマット構文を確認することはできません。

それはいいですね。 私はそれをすべきですか? @datapythonista @MomIsBestFriend

私は、内のコードをたくさん見つけ@Appender()使用している%フォーマット文字列に。 これらのコードは_shared_docsをテンプレートとして使用しています。これは主に/pandas/core/generic.pyで定義されており、複数のファイルにまたがって使用されています。

_shared_docs関連するすべてのフォーマットを置き換えたいと思います。 この変更により、多くのファイルを変更する必要がありますが、それらのファイル内の他のすべての文字列フォーマット構文を確認することはできません。

それはいいですね。 私はそれをすべきですか? @datapythonista @MomIsBestFriend

@ HH-MWB私はこれについて本当に発言権を持っていません、私はjrebackとWillAydとdatapythonista(私はそれらを煩わせたくないのでタグ付けしない)が私ができる以上にあなたを助けることができると思います:)

何をAppenderに置き換えようとしていますか? 私はf-stringsになることはできないと思います

Py27構文を.formatで置き換えても問題ありませんが、別の問題を開いて議論する価値があります。

何をAppenderに置き換えようとしていますか? 私はf-stringsになることはできないと思います

Py27構文を.formatで置き換えても問題ありませんが、別の問題を開いて議論する価値があります。

@WillAyd stdlibのstring.Templateが、これに対する正しい方法だと思います。
何かご意見は?

こんにちは@WillAyd 、申し訳ありませんが、明確にしませんでした。 はい、私の当初のアイデアは、 %.formatに置き換え、 %(XXX)sようなコードを_shared_docsテンプレートの{XXX}に置き換えること@MomIsBestFriendが言ったように、 string.Templateは別の選択肢です。

私はさらに議論するために別の問題を開きました。 ありがとう!

引き受ける:

  • [x] pandas / tests / reshape / test_reshape.py
  • [x]パンダ/テスト/スカラー/期間/test_period.py

参照番号31412

@MomIsBestFriendこんにちは! 初めてのオープンソース寄稿者はこちら! 初めてのPRにとても興奮しています! 次のファイルで作業してみます。
versioneer.py
web / pandas_web.py
ありがとう!!

@drewseibert versioneer.pyはベンダーたくありません

@jbrockmendel頭を上げてくれてありがとう。 それに加えて、私が言及した他のファイル「web /pandas_web.py」もすでに処理されているようです。 両方ともワークリストから削除できます。

また、コミットをプッシュしようとすると、403パーミッションエラーが発生します。 SSHキーを追加し、リモートURLを設定してみました。 SSHとHTTPSのどちらでクローンを作成しても機能しません。 どんな助けでも大歓迎です! ありがとう!

@MomIsBestFriendこんにちは! 初めてのオープンソース寄稿者はこちら! 初めてのPRにとても興奮しています! 次のファイルで作業してみます。
versioneer.py
web / pandas_web.py
ありがとう!!

頑張って@drewseibert

私がもらう:

pandas / core / reshape / concat.py
pandas / core / reshape / melt.py
pandas / core / reshape / merge.py
pandas / core / reshape /ピボット.py
pandas / core / reshape / reshape.py

今これに取り組んでいます:

pandas / tests / io / test_pickle.py

やあ
私がもらう

pandas / util / _print_versions.py

pandas / util / _test_decorators.py

https://github.com/pandas-dev/pandas/pull/31628は大丈夫なはずです:)

pandas/tests/frame/test_repr_info.py取ります

参照: https

ねえ、私が取る

  • [] pandas / core / arrays / integer.py

次のファイルはリストでチェックできます...
web / pandas_web.py
pandas / tests / io / test_pickle.py

ありがとう!

チェックするもう1つ..ファイルにf文字列は必要ありません:
pandas / tests / series / indexing / test_boolean.py

私は今これに取り組みます...

pandas / tests / series / indexing / test_indexing.py

ありがとう@drewseibert

ここにはまだ作業が残っていますか? 貢献したい

@ 3vtsはい、もちろん:)

私はあなたが取ることができると思います

pandas / tests / util / test_assert_extension_array_equal.py


もっと欲しいならLMK。

私が手伝うことができる何か! これは私の最初のオープンソースの貢献になるので、助けが必要かもしれません。 記事を寄稿する方法をいくつか読みましたが、それでもです。

どれを処理してほしいですか?

@MomIsBestFriendpandas/tests/util/test_assert_extension_array_equal.pyがPR #30816で修正されたようです。また、私はすでに環境をセットアップしています。 作業に負荷をかけてくれませんか?

@ 3vts @GrizzledLabs -あなたが作業しているものを、次にここにコメント-上記のリストではまだ行われていないファイルのいずれかをとる(および他のそれに取り組んでいる誰を確認していない)して自由に感じます! ありがとう !

pandas / core / arrays /boolean.pyはすでに完了しているようです。 見逃さない限り、1つのf '文字列が表示され、.format()は表示されませんでした。

pandas / core / dtypes /common.pyもすでに実行されているようです。 f '文字列ですが.format()はありません

これらの修正のいくつかは複数のファイルにまたがっていますか? いくつかは単一の.format()を含んでおらず、ファイル間で呼び出される関数があるかどうか疑問に思っていますか? 1つの修正で複数のファイルを変更する必要がありますか?

こんにちは、ここで初めての寄稿者です! 始めて興奮しています!
当初、私はこれらを取りたかった:

pandas / compat / pickle_compat.py
pandas / _config / config.py

しかし、それが完了してマージされているのを確認しました。 @ MomIsBestFriend上部のリストを更新して、チェックマークを付けてください。

私はこれらを取ります:

  • [] pandas / tests / io / parser / test_usecols.py

  • [] pandas / tests / io / pytables / conftest.py

  • [] pandas / tests / io / pytables / test_store.py

  • [] pandas / tests / io / pytables / test_timezones.py

@MomIsBestFriendがスレッドを確認しましたが、事前定義された文字列には例外があります。 これはまだ適用されますか? または私たちは今持っています。 回避策?

事前定義された文字列に問題があります。

私は完全に理解しています、 pep 498が説明するように:

通常の文字列はコンパイル時に連結され、f文字列は実行時に連結されます。

.format()の使用を削除し、他の文字列テンプレートを使用する方法を考える必要があります。

現時点で私が考えることができるのはstdlibからのstring.Templateだけですが、私は本当に知りません。

@jbrockmendel手伝ってくれませんか。

こんにちは、初めての寄稿者👋。 私がもらう:

  • [X]パンダ/テスト/tseries/frequencies/test_inference.py
  • [X] pandas / tests / series / methods / test_argsort.py
  • [X] pandas / tests / series / test_constructors.py
  • [X] pandas / tests / indexing / common.py
  • [X] pandas / tests / indexing / test_coercion.py
  • [X] pandas / tests / indexing / test_iloc.py
  • [X] pandas / tests / indexing / test_indexing.py
  • [X] pandas / tests / indexing / test_loc.py
  • [X] pandas / tests / indexes / common.py
  • [X] pandas / tests / indexes / datetimelike.py

@ monicaw218、1つのファイルから始めます。プルリクエストがマージされたら、残りのファイルを続行できます。 最初の貢献は通常、予想よりもトリッキーであり、私たち(レビュー担当者)にとっては、プルリクエストが小さい場合にも役立ちます。 特に、より多くのフィードバックが必要になる可能性がある新しい寄稿者向け。

これらの2つのファイルは、リストからチェックできます。
👍
pandas / io / parsers.py
pandas / io / pytables.py

これらも行って良いです:

pandas / tests / groupby / test_apply.py
pandas / tests / groupby / test_bin_groupby.py

これらは#31914で準備ができています
「パンダ/テスト/拡張/ 10進数/test_decimal.py」
"pandas / tests / frame / indexing / test_categorical.py"
"pandas / tests / frame / methods / test_describe.py"
"pandas / tests / frame / methods / test_duplicated.py"
"pandas / tests / frame / methods / test_to_dict.py"
"pandas / tests / frame / test_alter_axes.py"
"pandas / tests / frame / test_api.py"
"pandas / tests / frame / test_constructors.py"
"pandas / tests / frame / test_dtypes.py"
"pandas / tests / frame / test_join.py"

「pandas / io / sas /sas_xport.py」を使用します。

これらは#31933で準備ができています

"pandas / tests / frame / test_operators.py"
"pandas / tests / frame / test_reshape.py"
"pandas / tests / frame / test_timeseries.py"
"pandas / tests / indexes / datetimes / test_scalar_compat.py"
"pandas / tests / indexes / datetimes / test_tools.py"
"pandas / tests / indexes / interval / test_indexing.py"
"pandas / tests / indexes / interval / test_interval.py"

これらは#31945に含まれています

"pandas / tests / indexes / interval / test_setops.py"
"pandas / tests / indexes / multi / test_compat.py"
"pandas / tests / indexes / period / test_constructors.py"
"pandas / tests / indexes / timedeltas / test_constructors.py"
"pandas / tests / indexing / test_floats.py"

これらは#31963に含まれています

"pandas / tests / internals / test_internals.py"
"pandas / tests / io / excel / test_readers.py"
"pandas / tests / io / excel / test_style.py"
"pandas / tests / io / excel / test_writers.py"
"pandas / tests / io / excel / test_xlrd.py"
「パンダ/テスト/io/formats/test_console.py」
"pandas / tests / io / formats / test_to_html.py"
「パンダ/テスト/io/formats/test_to_latex.py」
"pandas / tests / io / generate_legacy_storage_files.py"

これらは#31967に含まれています

"pandas / tests / io / parser / test_c_parser_only.py"
"pandas / tests / io / parser / test_common.py"
"pandas / tests / io / parser / test_compression.py"
"pandas / tests / io / parser / test_encoding.py"
"pandas / tests / io / parser / test_multi_thread.py"
"pandas / tests / io / parser / test_na_values.py"
"pandas / tests / io / parser / test_parse_dates.py"
"pandas / tests / io / parser / test_read_fwf.py"
"pandas / tests / io / pytables / conftest.py"
"pandas / tests / io / pytables / test_store.py"

これらは#31980に含まれています

"pandas / tests / io / pytables / test_timezones.py"
"pandas / tests / io / test_html.py"
"pandas / tests / io / test_stata.py"
"pandas / tests / resample / test_period_index.py"
"pandas / tests / reshape / merge / test_join.py"
"pandas / tests / reshape / merge / test_merge.py"
"pandas / tests / reshape / merge / test_merge_asof.py"
"pandas / tests / reshape / test_melt.py"
"pandas / tests / reshape / test_pivot.py"
"pandas / tests / scalar / timedelta / test_constructors.py"

これらは#31986に含まれています

「パンダ/テスト/スカラー/タイムスタンプ/test_constructors.py」
「パンダ/テスト/スカラー/タイムスタンプ/test_rendering.py」
「パンダ/テスト/スカラー/タイムスタンプ/test_unary_ops.py」
"pandas / tests / series / methods / test_nlargest.py"
"pandas / tests / series / test_analytics.py"
"pandas / tests / series / test_api.py"
"pandas / tests / series / test_dtypes.py"
"pandas / tests / series / test_ufunc.py"

このhttps://github.com/pandas-dev/pandas/pull/32007で私の最初のプルリクエストを追加しました:
pandas / tests / frame / test_to_csv.py

これらは#32032に含まれています

"pandas / tests / test_downstream.py"
"pandas / tests / test_multilevel.py"
"pandas / tests / tools / test_numeric.py"
「パンダ/テスト/tseries/frequencies/test_inference.py」
"pandas / tests / tslibs / test_parse_iso8601.py"
"pandas / tests / window / moments / test_moments_rolling.py"

このファイルは#32029に含まれています:

  • pandas / tests / arrays / category / test_analytics.py

https://github.com/pandas-dev/pandas/pull/32044に含まれているファイル

  • scripts / find_commits_touching_func.py

これらは#32034に含まれています

「pandas / core / arrays /interval.py」
「pandas / core / util /hashing.py」
「パンダ/io/formats/format.py」
「pandas / io / formats /html.py」
「pandas / io / formats /latex.py」
「pandas / io / formats /printing.py」
「pandas / io /parsers.py」
"pandas / tests / arrays / category / test_dtypes.py"
"pandas / tests / arrays / category / test_operators.py"

これらは完了です...

pandas / core / ops / invalid.py
pandas / core / ops / methods.py
pandas / core / ops / roperator.py

#32063に含まれるファイル:

  • pandas / tests / tseries / Frequencies / test_inference.py
  • pandas / tests / tslibs / test_parse_iso8601.py

こんにちは、scripts /validate_docstrings.pyを取りたいです

プルリクエストに含まれるファイル#32189

  • pandas / tests / indexes / datetimes / test_to_period.py

この問題は解決されましたか? このスレッドの上部にあるリストでマークされていないファイルを見てきましたが、.format()文字列が変換されたようです

pandas // util / _decorators.pyが完了しました(失敗した行はコメントです)

pandas // core / indexes / base.pyはマークオフする必要があります(失敗はコメントからです)

こんにちは、私はpandas / core / generic.pyを見始めましたが、文字列テンプレートを%補間された文字列からstring.Templateに変更するには、 Substitute多くの場所で変更が必要であることにすぐに気付きました。 Appenderデコレータが使用されます。

%文字列補間の使用をすべて削除することを目的としていますか?その場合、この作業が必要になりますか、それとも%補間を使用しても大丈夫ですか?

@smartvinnetou AppenderSubstituteは、現在、これらをdocデコレータに置き換えようとしています。 https://github.com/pandas-dev/pandas/issues/31942を参照して

@smartvinnetou AppenderSubstituteは、現在、これらをdocデコレータに置き換えようとしています。 #31942を参照

@MomIsBestFriendこのチケットのpandas/core/generic.pyのアップグレードをスキップして、#31942で実行しますか? または、 generic.py AppenderSubtituteデコレータをこのチケットの下の新しいdocデコレータに置き換えて、古い%補間を削除する必要がありますか?

@smartvinnetou AppenderSubstituteは、現在、これらをdocデコレータに置き換えようとしています。 #31942を参照

@MomIsBestFriendこのチケットのpandas/core/generic.pyのアップグレードをスキップして、#31942で実行しますか? または、 generic.py AppenderSubtituteデコレータをこのチケットの下の新しいdocデコレータに置き換えて、古い%補間を削除する必要がありますか?

@smartvinnetou pandas/core/generic.pyの場合は# 31942未満(正しく理解した場合)

こんにちは。実行済みまたは変更の必要がないファイルが多数見つかりましたが、未完了としてマークされています。 この問題が解決され、誤ってマークされていないのか、それともまだ作業中なのかを尋ねたかっただけです。 解決しない場合は、私も貢献したいと思います。 これらは、実行されたがマークされていないファイルの一部でした

  • pandas / core / generic.py
  • pandas / core / arrays / datetimes.py
  • pandas / core / arrays / integer.py
  • pandas / core / arrays / period.py
  • pandas / core / arrays / timedeltas.py
  • pandas / core / config_init.py
  • pandas / core / dtypes / dtypes.py
  • pandas / core / frame.py

@ sachinh35リストを更新しました:)

追跡するのが難しくなりました

リストを更新していただきありがとうございます。 @MomIsBestFriend

pandas/core/ops/未満のファイルについては#32939で貢献したいと思います。 たとえばhttps://github.com/pandas-dev/pandas/blob/master/pandas/core/ops/docstrings.py#L564のように、他のファイルにもインポートされることがあるdocstringをどのように処理する必要がありますか? 関数でラップしますか?

私が変更され

  • pandas / core / sorting.py
  • pandas / tests / indexes / datetimes / test_date_range.py
  • pandas / tests / indexes / interval / test_interval.py
  • pandas / tests / indexing / test_coercion.py
  • pandas / tests / reshape / test_concat.py
  • pandas / util / _decorators.py

2つのファイルが変更されました。
pandas / _libs / tslibs / timedeltas.pyx
pandas / _libs / tslibs / timestamps.pyx

以下の問題はありませんでしたのでご注意ください。 完了としてマークすることもできます。
pandas / _libs / tslibs / c_timestamp.pyx
pandas / _libs / tslibs / Frequencies.pyx
pandas / _libs / tslibs / parsing.pyx
pandas / _libs / tslibs / period.pyx
pandas / _libs / tslibs / strptime.pyx

注:これは私の初めてのPRです。 何か改善が必要な場合はお知らせください。

リストを更新し、いくつかのファイルを確認するために、トピックを確認しました。

コミットなしで完了としてマークされたファイル

(何も変更する必要はありません):

  • [x] pandas / _config / config.py
  • [x] pandas / _version.py
  • [x] pandas / compat / pickle_compat.py
  • [x]パンダ/コア/コンピュテーション/pytables.py
  • [x] pandas / core / indexes / base.py
  • [x]パンダ/コア/インデックス/multi.py
  • [x] pandas / core / indexes / range.py
  • [x] pandas / core / ops / __ init__.py
  • [x] pandas / core / ops / docstrings.py
  • [x] pandas / core / reshape / merge.py
  • [x] pandas / core / tools / datetimes.py
  • [x]パンダ/io/formats/css.py
  • [x]パンダ/io/formats/excel.py
  • [X]パンダ/ IO /形式/ format.py
  • [X]パンダ/ IO /形式/ html.py
  • [x]パンダ/io/formats/info.py
  • [x]パンダ/io/formats/latex.py
  • [x]パンダ/io/formats/printing.py
  • [x]パンダ/io/formats/style.py
  • [X]パンダ/ IO / parsers.py
  • [x] pandas / io / pytables.py
  • [x] pandas / io / sas / sas_xport.py
  • [x] pandas / io / stata.py
  • [X]パンダ/試験/アレイ/カテゴリ/ test_operators.py
  • [X]パンダ/試験/アレイ/ test_datetimelike.py
  • [x] pandas / tests / dtypes / test_dtypes.py
  • [x] pandas / tests / extension / base / setitem.py
  • [X]パンダ/試験/フレーム/ test_constructors.py
  • [x] pandas / tests / frame / test_missing.py
  • [X]パンダ/試験/フレーム/ test_to_csv.py
  • [x]パンダ/テスト/groupby/aggregate/test_other.py
  • [x] pandas / tests / indexes / datetimes / test_datetime.py
  • [x] pandas / tests / indexes / datetimes / test_formats.py
  • [x] pandas / tests / indexes / datetimes / test_partial_slicing.py
  • [x] pandas / tests / indexes / interval / test_constructors.py
  • [X]パンダ/試験/インデックス/マルチ/ test_format.py
  • [x] pandas / tests / indexes / period / test_formats.py
  • [x] pandas / tests / indexes / timedeltas / test_timedelta.py
  • [x] pandas / tests / indexing / test_categorical.py
  • [x] pandas / tests / io / excel / test_openpyxl.py
  • [x] pandas / tests / io / excel / test_writers.py
  • [x] pandas / tests / io / formats / test_format.py
  • [x] pandas / tests / io / formats / test_printing.py
  • [x] pandas / tests / io / formats / test_style.py
  • [x] pandas / tests / io / formats / test_to_csv.py
  • [x] pandas / tests / io / formats / test_to_html.py
  • [x] pandas / tests / io / formats / test_to_latex.py

チェックする残りのファイル:

  • [] pandas / core / arrays / datetimelike.py
  • [] pandas / tests / io / parser / test_compression.py
  • [] pandas / tests / io / parser / test_encoding.py
  • [] pandas / tests / io / parser / test_header.py
  • [] pandas / tests / io / parser / test_parse_dates.py
  • [] pandas / tests / io / parser / test_usecols.py
  • [] pandas / tests / io / test_html.py
  • [] pandas / tests / io / test_sql.py
  • [] pandas / tests / io / test_stata.py
  • []パンダ/tests/reductions/test_reductions.py
  • [] pandas / tests / reshape / test_melt.py
  • []パンダ/テスト/スカラー/期間/test_period.py
  • [] pandas / tests / scalar / timedelta / test_timedelta.py
  • []パンダ/テスト/スカラー/タイムスタンプ/test_constructors.py
  • [] pandas / tests / series / indexing / test_numeric.py
  • [] pandas / tests / series / indexing / test_take.py
  • [] pandas / tests / series / indexing / test_where.py
  • [] pandas / tests / series / methods / test_rename.py
  • [] pandas / tests / series / test_api.py
  • [] pandas / tests / series / test_constructors.py
  • [] pandas / tests / series / test_datetime_values.py
  • [] pandas / tests / series / test_repr.py
  • [] pandas / tests / test_strings.py
  • [] pandas / tests / tools / test_to_datetime.py
  • []パンダ/テスト/tseries/holiday/test_calendar.py
  • []パンダ/テスト/tseries/holiday/test_holiday.py
  • [] pandas / tests / tslibs / test_parsing.py
  • [] pandas / tests / util / test_assert_frame_equal.py
  • [] pandas / tseries / Frequencies.py
  • [] pandas / util / _test_decorators.py
  • [] pandas / util / _validators.py

私はpandas/util/_validators.py面倒をみました。 これらの他のファイルの多くは、私にもすでに問題がないようです。

  • [x] pandas / util / _test_decorators.py
  • [x] pandas / tseries / Frequencies.py
  • [x] pandas / tests / util / test_assert_frame_equal.py
  • [x] pandas / tests / tslibs / test_parsing.py
  • [x]パンダ/テスト/tseries/holiday/test_holiday.py
  • [x]パンダ/テスト/tseries/holiday/test_calendar.py
  • [x] pandas / tests / tools / test_to_datetime.py
  • [x] pandas / tests / test_strings.py
  • [x] pandas / tests / series / test_repr.py
  • [x] pandas / tests / series / test_datetime_values.py
  • [x] pandas / tests / series / test_constructors.py
  • [x] pandas / tests / series / test_api.py

こんにちはマッテオ、
私はこの取り組みを支援することに興味がありますが、gitと
パンダに貢献しています。 あなたはおそらく私を通り抜けることができるでしょうか
ステップ? おそらく今週は画面共有を設定できますか?

ありがとう、
アンドリュー

火、2020年5月26日には、午前3時12分PMマッテオ・サンタマリア[email protected]
書きました:

私はpandas / util /_validators.pyの世話をしました。 これらの他のファイルの多く
私ももう大丈夫そうです。

  • pandas / util / _test_decorators.py
  • pandas / tseries / Frequencies.py
  • pandas / tests / util / test_assert_frame_equal.py
  • pandas / tests / tslibs / test_parsing.py
  • pandas / tests / tseries / holiday / test_holiday.py
  • pandas / tests / tseries / holiday / test_calendar.py
  • pandas / tests / tools / test_to_datetime.py
  • pandas / tests / test_strings.py
  • pandas / tests / series / test_repr.py
  • pandas / tests / series / test_datetime_values.py
  • pandas / tests / series / test_constructors.py
  • pandas / tests / series / test_api.py


このスレッドにサブスクライブしているため、これを受け取っています。
このメールに直接返信し、GitHubで表示してください
https://github.com/pandas-dev/pandas/issues/29547#issuecomment-634307953
または購読を解除する
https://github.com/notifications/unsubscribe-auth/APG73XKAUDLFVVQXUS2SJETRTQ5DDANCNFSM4JLZCU5Q

ねえ@ warden706 、私は実際にはここでもかなり新しいので、あなたに見せることはあまりありません。 私がつまずいたので、このリソースは非常に役立つことがわかりました。チェックしてください。

やあ、
ここでも貢献するのはかなり新しいです。 お世話になっています

  • [x] pandas / tests / io / parser / test_header.py
  • [x] pandas / tests / io / test_sql.py
  • [x] pandas / tests / io / test_html.py
  • [x] pandas / tests / reduces / test_reductions.py
  • [x] pandas / tests / reshape / test_melt.py
  • [x] pandas / tests / scalar / timedelta / test_timedelta.py

私はこれらの他のファイルをチェックしました、そして私には大丈夫のようです

  • [X] pandas / tests / io / parser / test_compression.py
  • [X] pandas / tests / io / parser / test_encoding.py
  • [X] pandas / tests / io / parser / test_parse_dates.py
  • [X] pandas / tests / io / parser / test_usecols.py
  • [X] pandas / tests / io / test_stata.py
  • [X]パンダ/テスト/スカラー/期間/test_period.py
  • [X]パンダ/テスト/スカラー/タイムスタンプ/test_constructors.py

私もここで新しいです。
私がもらう

  • [] pandas / tests / series / indexing / test_numeric.py
  • [] pandas / tests / series / indexing / test_take.py
  • [] pandas / tests / series / indexing / test_where.py

コードの変更について質問があります。
たとえば、pandas / tests / series / indexing / test_take.pyでは、コードのスニペットは次のとおりです。

 msg = "index {} is out of bounds for( axis 0 with)? size 5"
 with pytest.raises(IndexError, match=msg.format(10)):
     ser.take([1, 10])

だから私の提案はそれを次のように置き換えることです:

msg = lambda x: f"index {x} is out of bounds for( axis 0 with)? size 5"
with pytest.raises(IndexError, match=msg(10)):
    ser.take([1, 10])

それで十分ですか?

やあ、
PRをしたいので、テストを実行していますが、失敗が2回あります。 そこで、マスターでもテストを実行してみました。
編集されていないフォークされたマスターでpytest pandasを実行すると、いくつかの失敗が返されるのは正常ですか?

マスターは通常、テストに合格する必要があります。 最新のコミットをプルしたことを確認してください。 どのテストが失敗していますか?

@matteosantama最後のコミットをプルし、環境を再インストールして、 pytest pandasテストを再実行しました。 これらは結果です

================= short test summary info =================
FAILED pandas/tests/io/test_parquet.py::TestParquetFastParquet::test_s3_roundtrip - ValueError: Invalid timestamp "Ven, 29 Mag 2020 07:59:19 GMT": Unknown string format: Ven, 29 Mag 2020 07:59:19 GMT
FAILED pandas/tests/plotting/test_datetimelike.py::TestTSPlot::test_ts_plot_with_tz['UTC'] - AttributeError: 'numpy.datetime64' object has no attribute 'hour'
================= 2 failed, 87804 passed, 1185 skipped, 1005 xfailed, 5637 warnings in 2437.06s (0:40:37) =================

単一のディレクトリでのみテストを実行した場合(たとえば、 pytest pandas/tests/io )、失敗は発生しないことに気付きました。

 7273 passed, 344 skipped, 53 xfailed, 5584 warnings in 351.76s (0:05:51) 

@OlivierLuGのコメント以降、ほとんどすべてのファイルが修正されているか、変更なしですでに問題がないようです。 「まだ開いている」ファイルに関するリストを更新してみます。

修正済み

  • [X] pandas / util / _validators.py
  • [X] pandas / tests / io / parser / test_header.py
  • [X] pandas / tests / io / test_sql.py
  • [X] pandas / tests / reduces / test_reductions.py

変更する必要はありません

  • [X] pandas / util / _test_decorators.py
  • [X] pandas / tseries / Frequencies.py
  • [X] pandas / tests / util / test_assert_frame_equal.py
  • [X] pandas / tests / tslibs / test_parsing.py
  • [X]パンダ/テスト/tseries/holiday/test_holiday.py
  • [X]パンダ/テスト/tseries/holiday/test_calendar.py
  • [X] pandas / tests / tools / test_to_datetime.py
  • [X] pandas / tests / test_strings.py
  • [X] pandas / tests / series / test_repr.py
  • [X] pandas / tests / series / test_datetime_values.py
  • [X] pandas / tests / series / test_constructors.py
  • [X] pandas / tests / series / test_api.py
  • [X] pandas / tests / io / parser / test_compression.py
  • [X] pandas / tests / io / parser / test_encoding.py
  • [X] pandas / tests / io / parser / test_parse_dates.py
  • [X] pandas / tests / io / parser / test_usecols.py
  • [X] pandas / tests / io / test_stata.py
  • [X]パンダ/テスト/スカラー/期間/test_period.py
  • [X]パンダ/テスト/スカラー/タイムスタンプ/test_constructors.py
  • [X] pandas / tests / io / test_html.py
  • [X] pandas / tests / reshape / test_melt.py
  • [X]パンダ/テスト/スカラー/ timedelta / test_timedelta.py

また、これももう大丈夫だと思います

  • [X] pandas / core / arrays / datetimelike.py
  • [X] pandas / tests / series / methods / test_rename.py

まだチェック/修正する

  • [x] pandas / tests / series / indexing / test_numeric.py
  • [x] pandas / tests / series / indexing / test_take.py
  • [x] pandas / tests / series / indexing / test_where.py

@DanBasson更新はありますか?

意味がわからないエラーが発生し続けます。
どんな助けでもありがたいです

マスターで最新の変更を取得しようとしましたか? 多分それは失敗したテストのいくつかを修正するでしょう。

それは役に立たなかった。
他の誰かがそれを取りたい場合は、

私は疑問を持っています: pandas/tests/reshape/test_melt.pyような状況があるとき:

msg = "The following '{Var}' are not present in the DataFrame: {Col}"
...
with pytest.raises(KeyError, match=msg.format(Var="value_vars", Col="\\['C'\\]")):
...
with pytest.raises(KeyError, match=msg.format(Var="id_vars", Col="\\['A'\\]")):
...

など、 msgを関数に変換し、「Col」の異なる値で呼び出す必要がありますか? それともそのままにしておく方がいいですか?

@MatteoFeliciその更新されたリストに感謝します。 あなたが呼び出した最後のいくつかの残りのモジュールをチェックしましたが、これは問題ないように見えるので、この問題を解決できると思います

このページは役に立ちましたか?
0 / 5 - 0 評価