R警告後に何かをしてください(警告を試してみると、オブジェクトを編集する) -- r フィールド 関連 問題

R do something after a warning (like tryCatch a warning, then edit an object)












2
vote

問題

日本語

束を走っているログインモデルを実行しています。ここで問題を示すデータセット:

<事前> <コード> echo '<img src="'.$img_dir.$image_name.'0.jpg" alt="">'; 3

適用機能内のMyLogitからの推定値、モデルフィットなどを収集していて、この警告が返された場合に表示されているダミーを追加したいと思います。ただし、<コード> echo '<img src="'.$img_dir.$image_name.'0.jpg" alt="">'; 4 構文を十分に理解しておくと、私が見つける例はほとんど警告などを返すことを目的としています。

<事前> <コード> echo '<img src="'.$img_dir.$image_name.'0.jpg" alt="">'; 5

はtryCatch()間違ったアプローチですか?

英語

I'm running a bunch of logit models, some of them with perfect separation which returns a glm warning. Here a dataset that shows the problem:

DT <- iris str(DT) DT$binary <- as.numeric(DT$Petal.Width>1) DT$dummy <- as.numeric(as.numeric(DT$Species)>2)  mylogit <- glm(binary~Sepal.Length+dummy,data = DT, family=binomial(link='logit')) 

I'm collecting estimates, model fit, etc from mylogit inside an apply function and would like to add a dummy showing if this warning was returned. However, I don't understand the tryCatch() syntax enough and the examples I find are mostly aimed at returning warnings etc. I'm looking for something like:

if(warning is returned){x <- 1} 

Is tryCatch() the wrong approach?

</div
  

回答リスト

2
 
vote
vote
ベストアンサー
 

はい、<コード> conditionMessage(w)3 は使用する権利機能です。

<事前> <コード> x <- 0 tryCatch( mylogit <- glm(binary~Sepal.Length+dummy,data = DT, family=binomial(link='logit')), warning = function(w) { x <<- x + 1 } )

関数の範囲外の変数に割り当てているように、 <<- が必要です。 (通常はそれは悪い考えですが、ここでは必要です。)

警告テキストで何かをしたい場合は、 conditionMessage(w)

 

Yes, tryCatch is the right function to use:

x <- 0 tryCatch(     mylogit <- glm(binary~Sepal.Length+dummy,data = DT, family=binomial(link='logit')),     warning = function(w) { x <<- x + 1 } ) 

The <<- is necessary, as you are assigning to a variable that is outside the scope of the function. (Usually that is a bad idea but here it is necessary.)

If you want to do something with the warning text, use conditionMessage(w).

</div
 
 
       
       
2
 
vote

tryCatchは正しいアプローチです。いくつかの例が明確ではなく、過去のTryCatchにも問題があることもあなたに同意します。私はいつも次のことを見つけてください。 >

 

tryCatch would be the correct approach. I agree with you that some examples are not as clear and had some trouble with tryCatch in the past myself as well. I always find the following SO answer a helpful reference: How to write trycatch in R

</div
 
 

関連する質問

1  Rを使用してデータポイントの対数形式のデータポイントを推定するにはどうすればよいですか。  ( How can i estimate the logarithmic form of data points using r ) 
対数関数を表すデータ点を持っています R?を使ってこのデータを説明する関数を推定できるアプローチはありますか? ありがとう。 ...

4  ASCIIキャラクターを表示します  ( Show an ascii character ) 
ブロックASCII文字█を表示したい(ASCIIコードは219)、 ターミナルに表示する方法は? winxp でRGUIを使用しています ...

8  R:シンプルなコマンドラインの作成ツール/キャプチャウィンドウ閉じるイベント  ( R building a simple command line plotting tool capturing window close events ) 
単純なコマンドラインプロットツールとして機能するスクリプト内でRを使用しようとしています。 NS。ユーザーパイプはCSVファイルでプロットを取得します。私はr罰金に到達して、さまざまな一時ファイルの機械加工を通して展示するためにプロットを取得することができます...

5  複数の変数で変換された複数の列を追加する  ( Adding multiple columns transforming with multiple variables ) 
多くの変数から値を追加する方法? 2つの変数(列)を持っていた場合、私は単に行くことができます: <事前> <コード> summation.variable <- variable1 + variable2 またはそれがすべてデータフレームにあった場合:...

12  Rの重複属性を持つ行を取り除きます  ( Get rid of rows with duplicate attributes in r ) 
私は次のような列を持つ大きなデータフレームを持っています。 <事前> <コード> ID, time, OS, IP そのデータフレームの各行は1つのエントリに対応します。一部の IDS 複数のエントリ(行)のデータフレーム内には存在します。それらの複数行を...

191  あなた自身の関数を書くときにRの省略記号機能を使う方法?  ( How to use rs ellipsis feature when writing your own function ) 
R言語は、可変数の引数を取ることができる関数を定義するためのNIFTY機能を持っています。たとえば、関数 data.frame は任意の数の引数を取り、各引数は結果のデータテーブル内の列のデータになります。使用例: <事前> <コード> > data.fra...

7  経済学を教えるための最高のプログラミング言語? [閉まっている]  ( Best programming language for teaching econometrics ) 
現在立つにつれて、この質問は私たちのQ&AMPにとって良いフィットではありません。フォーマット。私たちは事実、参考文献、または専門知識によって支持されることを期待していますが、この質問は...

26  Rのベクトルで考える  ( Thinking in vectors with r ) 
私は、Rがベクトルとループを使って最も効率的に機能することを知っています。私は実際にこのようにコードを書くために自分自身を教えるのに苦労しています。私のコードを「ベクトル化」する方法についてのいくつかのアイデアが欲しいのですが。これは、10,000個の固有の状...

2  空の文字列を含めるとRテーブルの列の順序  ( R table column order when including the empty string ) 
空の文字列を含む一連の値があります レベル(MyData $ Phone_Partner_Products) "" dont_know "" mays_intesting "> "not_inteenting" "very_not_inter...

10  RBIで変数をバインドします  ( Bind variables in r dbi ) 
Rの DBI パッケージで、バインド変数を使用するための機能を見つけていません。私はバインド変数について言われた文書(2002年からのオリジナルのビネット)を見つけました、「おそらくDBIはこの機能を実装することができます」はこれまでのところ、元に戻すことが...




© 2022 cndgn.com All Rights Reserved. Q&Aハウス 全著作権所有