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からの組み込みファイルとコマンド。
私が取っている:
[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
私がもらう:
それでよければ、始めましょう!
こんにちは@MomIsBestFriendこの変換のためのツールをお勧めできますか? ざっと見てみると、次のようになりました。
私はどちらも経験がありませんが、ここで非常に役立つ可能性があります
こんにちは@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
私がもらう:
これをgood first issue
としてタグ付けすることについて、みんなはどう思いますか? ここにあるほとんどのファイルに適用されます。 行う必要のある変更は通常、ファイルごとに数行程度であり、変更を行う人は誰でも、コードの他の部分に影響を与えることについてあまり心配する必要はありません(実行される終了関数は同じであるため)。
#28926に似たセットアップを描いています。
f-stringの交換は次の場所に配置されます:
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
私がもらう
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だから私は投稿を編集しました、あなたが気づいてくれてうれしいです:)
取り組んだことを投稿できますか? 誰かがコメントを検索した場合に備えて。
確かに、私は取った。
以下
.formatはまだ存在し、grep検索に表示されますが、fstringに変更するリテラルはありません。 それを行う別の方法があるか、そのまま維持するかはわかりませんが、そのファイルではすべてのリテラルがfstringにスワップされています。
.formatはまだ存在し、grep検索に表示されますが、fstringに変更するリテラルはありません。 それを行う別の方法があるか、そのまま維持するかはわかりませんが、そのファイルではすべてのリテラルがfstringにスワップされています。
@ForTimeBeing
問題はありません:)
PRありがとうございます:)
私が取った
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'
取った:
参照:#30116、#30135、#30363
私がもらう:
事前定義された文字列に問題があります。 私は解決策を見つけましたが、それが正しいものかどうかはわかりません。
次のような事前定義された文字列がある状況を想像してみてください。
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人に聞いてください。
取った
参照番号30120
取った
参照番号30121
取った
参照番号30124
私がもらう
編集:
取る:
[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 / tests / plotting / test_converter.py
pandas / tests / plotting / test_datetimelike.py
pandas / tests / plotting / test_series.py
私がもらう
こんにちは、 @ MomIsBestFriend
pandas / tests / plotting / test_converter.py
pandas / tests / plotting / test_datetimelike.py
pandas / tests / plotting / test_series.py
完了しました。 ありがとうございました。
こんにちは
私は取ることができます
ありがとう
こんにちは、私がかかります
ありがとう!
私が取った:
pandas/core/missing.py
pandas/core/nanops.py
pandas/tests/indexes/datetimes/test_partial_slicing.py
私のPRへのリンク: https :
私は取り組みます:
ここに「良い創刊号」というタグがあるためです
私がもらう:
[] pandas / io / sql.py
[] pandas / io / stata.py
ありがとう!
やります:
撮りたい
プルリクエストを実行しました
素晴らしい、常にパンダにチップインしたかった。 今後数週間で何を達成できるかがわかったら更新します...
私は取ることができます
pandas / _version.py
ジャンプする:
pandas / io / formats /csvs.pyを使用します
私が取っている:
質問:古い学校の文字列フォーマットを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
私も取ります
質問:古い学校の文字列フォーマットをAPIリファレンスに残す必要があるかどうかについての答えはありますか?
cc @WillAyd @jreback
「昔ながらの文字列形式」が何であるかはわかりませんが、 .format
には、f文字列がカバーしないいくつかのユースケース(つまり、遅延パラメータ化)があるので、それがまだ存在することを確認してください。 Py27文字列形式の構文はどこにもあるべきではないと思いますが
私は取るでしょう:
私がもらう
#30601で、私は引き受けました
それでよければ、以下の2つのファイルから始めることができます。
これらの変更は#30604で行われました
引き受ける:
PRでそのまま残されている.format
古い意図された使用法に注意するための好ましい方法はありますか? 何かが良いユースケースであり、PRで見落とされていると(誤って)想定している場合
取りかかっている
私がもらう
私は試してみたいと思います:
私が取りたいのは:
ありがとう@ HH-MWB
私が取る:
私は、内のコードをたくさん見つけ@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
は別の選択肢です。
私はさらに議論するために別の問題を開きました。 ありがとう!
@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 :
ねえ、私が取る
次のファイルはリストでチェックできます...
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。
私が手伝うことができる何か! これは私の最初のオープンソースの貢献になるので、助けが必要かもしれません。 記事を寄稿する方法をいくつか読みましたが、それでもです。
どれを処理してほしいですか?
@MomIsBestFriendはpandas/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手伝ってくれませんか。
こんにちは、初めての寄稿者👋。 私がもらう:
@ 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に含まれています:
https://github.com/pandas-dev/pandas/pull/32044に含まれているファイル
これらは#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に含まれるファイル:
こんにちは、scripts /validate_docstrings.pyを取りたいです
プルリクエストに含まれるファイル#32189
この問題は解決されましたか? このスレッドの上部にあるリストでマークされていないファイルを見てきましたが、.format()文字列が変換されたようです
pandas // util / _decorators.pyが完了しました(失敗した行はコメントです)
pandas // core / indexes / base.pyはマークオフする必要があります(失敗はコメントからです)
こんにちは、私はpandas / core / generic.pyを見始めましたが、文字列テンプレートを%
補間された文字列からstring.Template
に変更するには、 Substitute
多くの場所で変更が必要であることにすぐに気付きました。 Appender
デコレータが使用されます。
%
文字列補間の使用をすべて削除することを目的としていますか?その場合、この作業が必要になりますか、それとも%
補間を使用しても大丈夫ですか?
@smartvinnetou Appender
とSubstitute
は、現在、これらをdoc
デコレータに置き換えようとしています。 https://github.com/pandas-dev/pandas/issues/31942を参照して
@smartvinnetou
Appender
とSubstitute
は、現在、これらをdoc
デコレータに置き換えようとしています。 #31942を参照
@MomIsBestFriendこのチケットのpandas/core/generic.py
のアップグレードをスキップして、#31942で実行しますか? または、 generic.py
Appender
とSubtitute
デコレータをこのチケットの下の新しいdoc
デコレータに置き換えて、古い%
補間を削除する必要がありますか?
@smartvinnetou
Appender
とSubstitute
は、現在、これらをdoc
デコレータに置き換えようとしています。 #31942を参照@MomIsBestFriendこのチケットの
pandas/core/generic.py
のアップグレードをスキップして、#31942で実行しますか? または、generic.py
Appender
とSubtitute
デコレータをこのチケットの下の新しいdoc
デコレータに置き換えて、古い%
補間を削除する必要がありますか?
@smartvinnetou pandas/core/generic.py
の場合は# 31942未満(正しく理解した場合)
こんにちは。実行済みまたは変更の必要がないファイルが多数見つかりましたが、未完了としてマークされています。 この問題が解決され、誤ってマークされていないのか、それともまだ作業中なのかを尋ねたかっただけです。 解決しない場合は、私も貢献したいと思います。 これらは、実行されたがマークされていないファイルの一部でした
@ sachinh35リストを更新しました:)
追跡するのが難しくなりました
リストを更新していただきありがとうございます。 @MomIsBestFriend
pandas/core/ops/
未満のファイルについては#32939で貢献したいと思います。 たとえばhttps://github.com/pandas-dev/pandas/blob/master/pandas/core/ops/docstrings.py#L564のように、他のファイルにもインポートされることがあるdocstringをどのように処理する必要がありますか? 関数でラップしますか?
私が変更され
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です。 何か改善が必要な場合はお知らせください。
リストを更新し、いくつかのファイルを確認するために、トピックを確認しました。
(何も変更する必要はありません):
私はpandas/util/_validators.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 、私は実際にはここでもかなり新しいので、あなたに見せることはあまりありません。 私がつまずいたので、このリソースは非常に役立つことがわかりました。チェックしてください。
やあ、
ここでも貢献するのはかなり新しいです。 お世話になっています
私はこれらの他のファイルをチェックしました、そして私には大丈夫のようです
私もここで新しいです。
私がもらう
コードの変更について質問があります。
たとえば、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のコメント以降、ほとんどすべてのファイルが修正されているか、変更なしですでに問題がないようです。 「まだ開いている」ファイルに関するリストを更新してみます。
また、これももう大丈夫だと思います
@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その更新されたリストに感謝します。 あなたが呼び出した最後のいくつかの残りのモジュールをチェックしましたが、これは問題ないように見えるので、この問題を解決できると思います
最も参考になるコメント
このhttps://github.com/pandas-dev/pandas/pull/32007で私の最初のプルリクエストを追加しました:
pandas / tests / frame / test_to_csv.py