タグ付けされた質問 「python」

Pythonは、マルチパラダイム、動的型付け、多目的プログラミング言語です。これは、学習、理解、使用が迅速で、クリーンで統一された構文を適用できるように設計されています。Python 2は2020年1月1日をもって正式にサポートされなくなりました。それでも、バージョン固有のPythonの質問については、[python-2.7]または[python-3.x]タグを追加します。Pythonのバリアントまたはライブラリ(Jython、PyPy、Pandas、Numpyなど)を使用する場合は、タグに含めてください。

2
Pythonで最初に出現する文字列を置き換える
サンプルの文字列があります。この文字列の最初の出現を長い文字列に空の文字列に置き換えるにはどうすればよいですか? regex = re.compile('text') match = regex.match(url) if match: url = url.replace(regex, '')
116 python  regex 

9
SQLAlchemy:カスケード削除
SQLAlchemyのカスケードオプションでは、単純なカスケード削除が正しく機能しないため、些細なことが欠けているに違いありません。親要素が削除された場合、子はnull外部キーを保持します。 ここに簡潔なテストケースを入れました: from sqlalchemy import Column, Integer, ForeignKey from sqlalchemy.orm import relationship from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker from sqlalchemy.ext.declarative import declarative_base Base = declarative_base() class Parent(Base): __tablename__ = "parent" id = Column(Integer, primary_key = True) class Child(Base): __tablename__ = "child" id = Column(Integer, primary_key = True) parentid …

10
Python-PythonでURLを検証する方法は?(不正かどうか)
私はurlユーザーから受け取ったもので、取得したHTMLで返信する必要があります。 URLの形式が正しくないかどうかを確認するにはどうすればよいですか? 例えば ​​: url='google' // Malformed url='google.com' // Malformed url='http://google.com' // Valid url='http://google' // Malformed どうすればこれを達成できますか?


9
パンダのデータフレームに非常に長い文字列を完全に印刷します
一見非常に単純なことに苦労しています。非常に長い文字列を含むパンダデータフレームがあります。 df = pd.DataFrame({'one' : ['one', 'two', 'This is very long string very long string very long string veryvery long string']}) 同じ文字列を印刷しようとすると、文字列全体が表示されず、文字列の一部しか表示されません。 次のオプションを試しました を使用して print(df.iloc[2]) を使用して to_html を使用して to_string stackoverflow回答の1つは、pandas表示オプションを使用して列幅を増やすことを提案しましたが、どちらも機能しませんでした。 また、set_printoptions私がどのように役立つかわかりませんでした。 どんなアイデアでも大歓迎です。非常にシンプルに見えますが、取得できません!
116 python  string  pandas  options 

9
バッチ正規化とドロップアウトの注文?
元々の質問は、特にTensorFlowの実装に関するものでした。ただし、答えは一般的な実装です。この一般的な答えは、TensorFlowの正しい答えでもあります。 TensorFlowでバッチ正規化とドロップアウトを使用する場合(具体的にはcontrib.layersを使用)、順序について心配する必要がありますか? ドロップアウトを使用してすぐにバッチ正規化を実行すると、問題が発生する可能性があります。たとえば、バッチ正規化のシフトがトレーニング出力のより大きなスケール数にトレーニングするが、テスト中にドロップアウトなしで同じシフトがより小さな(より多くの出力を持つための補正により)スケール数に適用される場合、シフトがオフになっている可能性があります。TensorFlowバッチ正規化レイヤーはこれを自動的に補正しますか?それとも私が行方不明になった何らかの理由でこれは起こりませんか? また、これら2つを一緒に使用するときに注意すべき他の落とし穴はありますか?たとえば、上記に関して正しい順序で使用していると仮定すると(正しい順序があると仮定して)、連続する複数のレイヤーでバッチ正規化とドロップアウトの両方を使用すると問題が発生する可能性がありますか?すぐに問題が発生することはありませんが、何か不足している可能性があります。 どうもありがとうございました! 更新: 実験的なテストでは、と思われる順序がことを示唆してい事柄。同じネットワークを2回実行しましたが、バッチノルムとドロップアウトリバースのみを使用しています。ドロップアウトがバッチノルムの前にある場合、トレーニングの損失が減少するにつれて検証の損失が増加するように見えます。他のケースでは、どちらも下がっています。しかし私の場合、動きが遅いので、トレーニングを重ねると状況が変わる可能性があり、それは1つのテストにすぎません。より決定的で情報に基づいた回答をいただければ幸いです。

14
Pandas DataFrameで列をネスト解除(分解)する方法は?
列の1つがオブジェクト(リスト型セル)である次のDataFrameがあります。 df=pd.DataFrame({'A':[1,2],'B':[[1,2],[1,2]]}) df Out[458]: A B 0 1 [1, 2] 1 2 [1, 2] 私の予想される出力は: A B 0 1 1 1 1 2 3 2 1 4 2 2 これを達成するにはどうすればよいですか? 関連する質問 パンダ:セルの内容がリストの場合、リストの各要素の行を作成します 質問と回答だけ(私の答えでは自己DEF機能は、複数の列のために働くリストで1列を扱う良い、また、受け入れ答えは、最も時間のかかる使用しているapply詳細情報を確認し、推奨されていない、私が今までにしたいはずですとき私のコードでパンダapply()を使用するには?)
116 python  pandas  dataframe 


4
Tensorflow Strides引数
tf.nn.avg_pool、tf.nn.max_pool、tf.nn.conv2dのストライド引数を理解しようとしています。 ドキュメントは繰り返し言います strides:長さが4以上の整数のリスト。入力テンソルの各次元のスライディングウィンドウのストライド。 私の質問は: 4以上の整数のそれぞれは何を表していますか? なぜconvnetに対してstrides [0] = strides [3] = 1にする必要があるのですか? で、この例で、私たちは見ますtf.reshape(_X,shape=[-1, 28, 28, 1])。なぜ-1? 悲しいことに、-1を使用して再形成するためのドキュメントの例は、このシナリオにうまく変換できません。

8
多次元配列をテキストファイルに書き込む方法
別の質問では、他のユーザーが、問題が発生したアレイを提供できるかどうかについていくつかの助けを提供しました。ただし、配列をファイルに書き込むなどの基本的なI / Oタスクでさえ失敗します。 ファイルに4x11x14のnumpy配列を書き込むために必要なループの種類を誰かが説明できますか? この配列は4つの11 x 14配列で構成されているため、他のユーザーがファイルを読みやすくするために、適切な改行でフォーマットする必要があります。 編集:それで私はnumpy.savetxt関数を試しました。奇妙なことに、次のエラーが発生します。 TypeError: float argument required, not numpy.ndarray これは、関数が多次元配列で機能しないためだと思いますか?私がそれらを1つのファイルに入れたい解決策はありますか?
115 python  file-io  numpy 

14
Pythonでの単体テストからのデータの出力
Pythonでユニットテストを記述している場合(unittestモジュールを使用)、失敗したテストからデータを出力することは可能ですか?それを調べて、エラーの原因を推測するのに役立てることができますか?一部の情報を運ぶことができるカスタマイズされたメッセージを作成する機能を知っていますが、文字列として簡単に表現できない、より複雑なデータを処理する場合があります。 たとえば、Fooクラスがあり、testdataというリストのデータを使用して、メソッドバーをテストするとします。 class TestBar(unittest.TestCase): def runTest(self): for t1, t2 in testdata: f = Foo(t1) self.assertEqual(f.bar(t2), 2) テストが失敗した場合、t1、t2、fを出力して、この特定のデータが失敗した理由を確認することができます。出力とは、テストが実行された後、他の変数と同様に変数にアクセスできることを意味します。


4
ValueErrorを発生させる方法は?
文字列内の特定の文字の最大のインデックスを見つけるこのコードがありますがValueError、指定した文字が文字列内に出現しない場合はを上げたいと思います。 だからこのようなもの: contains('bababa', 'k') 結果は: → ValueError: could not find k in bababa これどうやってするの? これが私の関数の現在のコードです: def contains(string,char): list = [] for i in range(0,len(string)): if string[i] == char: list = list + [i] return list[-1]
115 python  string 

2
scikit-learnのclass_weightパラメーターはどのように機能しますか?
class_weightscikit-learnのロジスティック回帰のパラメーターがどのように機能するかを理解するのに多くの問題を抱えています。 状況 ロジスティック回帰を使用して、非常に不均衡なデータセットでバイナリ分類を行いたいと思います。クラスには0(負)と1(正)のラベルが付けられ、観測されたデータは約19:1の比率で、サンプルの大部分が負の結果を示します。 最初の試み:手動でトレーニングデータを準備する トレーニングとテストのために、持っていたデータをばらばらのセットに分割しました(約80/20)。次に、手動でトレーニングデータをランダムにサンプリングして、19:1とは異なる比率でトレーニングデータを取得しました。2:1-> 16:1から。 次に、これらの異なるトレーニングデータサブセットでロジスティック回帰をトレーニングし、異なるトレーニング比率の関数として再現率(= TP /(TP + FN))をプロットしました。もちろん、再現率は19:1の割合が観測されたバラバラのTESTサンプルで計算されました。注:異なるトレーニングデータで異なるモデルをトレーニングしましたが、同じ(互いに素な)テストデータですべてのモデルの再現率を計算しました。 結果は予想通りでした。リコールは2:1のトレーニング比率で約60%で、16:1になるまでにかなり速く落ちました。再現率がまともな5%を超える2:1-> 6:1の比率がいくつかありました。 2回目の試み:グリッド検索 次に、さまざまな正則化パラメーターをテストしたかったので、GridSearchCVを使用して、Cパラメーターとパラメーターのいくつかの値のグリッドを作成しましたclass_weight。n:mの比率のネガティブ:ポジティブトレーニングサンプルを次の辞書言語に翻訳するには、class_weightいくつかの辞書を次のように指定するだけだと考えました。 { 0:0.67, 1:0.33 } #expected 2:1 { 0:0.75, 1:0.25 } #expected 3:1 { 0:0.8, 1:0.2 } #expected 4:1 と私も含まれNoneていautoます。 今回は結果は完全に奇抜でした。すべての私のリコールは、class_weightexceptのすべての値に対して非常に小さい(<0.05)でしたauto。だから私は、class_weight辞書を設定する方法についての私の理解が間違っているとしか想定できません。興味深いことに、class_weightグリッド検索の「auto」の値はC、のすべての値で約59%であり、1:1にバランスが取れていると思いますか? 私の質問 class_weight実際に提供するデータとは異なるトレーニングデータのバランスをとるために、どのように適切に使用しますか?具体的には、class_weightn:mの比率のネガティブ:ポジティブトレーニングサンプルを使用するためにどの辞書を渡しますか? さまざまなclass_weightディクショナリをGridSearchCVに渡すと、相互検証中に、ディクショナリに従ってトレーニングフォールドデータのバランスが再調整されますが、テストフォールドでのスコアリング関数の計算には、与えられた真のサンプル比率が使用されますか?メトリックは、それが観察された比率のデータからのものである場合にのみ私にとって有用であるため、これは重要です。 のauto値はclass_weightプロポーションまで何をしますか?私はドキュメントを読み、「データをその頻度に反比例してバランスさせる」とは、それが1:1になることを意味します。これは正しいです?そうでない場合、誰かが明確にできますか?


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.