{"action":"created","issue":{"url":"https://api.github.com/repos/scikit-learn/scikit-learn/issues/7084","repository_url":"https://api.github.com/repos/scikit-learn/scikit-learn","labels_url":"https://api.github.com/repos/scikit-learn/scikit-learn/issues/7084/labels{/name}","comments_url":"https://api.github.com/repos/scikit-learn/scikit-learn/issues/7084/comments","events_url":"https://api.github.com/repos/scikit-learn/scikit-learn/issues/7084/events","html_url":"https://github.com/scikit-learn/scikit-learn/pull/7084","id":167626823,"number":7084,"title":"[MRG + 1] ENH add a ValueDropper to artificially insert missing values (NMAR or MCAR) to the dataset","user":{"login":"raghavrv","id":9487348,"avatar_url":"https://avatars.githubusercontent.com/u/9487348?v=3","gravatar_id":"","url":"https://api.github.com/users/raghavrv","html_url":"https://github.com/raghavrv","followers_url":"https://api.github.com/users/raghavrv/followers","following_url":"https://api.github.com/users/raghavrv/following{/other_user}","gists_url":"https://api.github.com/users/raghavrv/gists{/gist_id}","starred_url":"https://api.github.com/users/raghavrv/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raghavrv/subscriptions","organizations_url":"https://api.github.com/users/raghavrv/orgs","repos_url":"https://api.github.com/users/raghavrv/repos","events_url":"https://api.github.com/users/raghavrv/events{/privacy}","received_events_url":"https://api.github.com/users/raghavrv/received_events","type":"User","site_admin":false},"labels":[{"id":297514516,"url":"https://api.github.com/repos/scikit-learn/scikit-learn/labels/Needs%20Review","name":"Needs Review","color":"f7c6c7","default":false},{"id":12995756,"url":"https://api.github.com/repos/scikit-learn/scikit-learn/labels/New%20Feature","name":"New Feature","color":"02e10c","default":false}],"state":"open","locked":false,"assignee":{"login":"raghavrv","id":9487348,"avatar_url":"https://avatars.githubusercontent.com/u/9487348?v=3","gravatar_id":"","url":"https://api.github.com/users/raghavrv","html_url":"https://github.com/raghavrv","followers_url":"https://api.github.com/users/raghavrv/followers","following_url":"https://api.github.com/users/raghavrv/following{/other_user}","gists_url":"https://api.github.com/users/raghavrv/gists{/gist_id}","starred_url":"https://api.github.com/users/raghavrv/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raghavrv/subscriptions","organizations_url":"https://api.github.com/users/raghavrv/orgs","repos_url":"https://api.github.com/users/raghavrv/repos","events_url":"https://api.github.com/users/raghavrv/events{/privacy}","received_events_url":"https://api.github.com/users/raghavrv/received_events","type":"User","site_admin":false},"assignees":[{"login":"raghavrv","id":9487348,"avatar_url":"https://avatars.githubusercontent.com/u/9487348?v=3","gravatar_id":"","url":"https://api.github.com/users/raghavrv","html_url":"https://github.com/raghavrv","followers_url":"https://api.github.com/users/raghavrv/followers","following_url":"https://api.github.com/users/raghavrv/following{/other_user}","gists_url":"https://api.github.com/users/raghavrv/gists{/gist_id}","starred_url":"https://api.github.com/users/raghavrv/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raghavrv/subscriptions","organizations_url":"https://api.github.com/users/raghavrv/orgs","repos_url":"https://api.github.com/users/raghavrv/repos","events_url":"https://api.github.com/users/raghavrv/events{/privacy}","received_events_url":"https://api.github.com/users/raghavrv/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/scikit-learn/scikit-learn/milestones/21","html_url":"https://github.com/scikit-learn/scikit-learn/milestones/0.19","labels_url":"https://api.github.com/repos/scikit-learn/scikit-learn/milestones/21/labels","id":1970916,"number":21,"title":"0.19","description":"","creator":{"login":"amueller","id":449558,"avatar_url":"https://avatars.githubusercontent.com/u/449558?v=3","gravatar_id":"","url":"https://api.github.com/users/amueller","html_url":"https://github.com/amueller","followers_url":"https://api.github.com/users/amueller/followers","following_url":"https://api.github.com/users/amueller/following{/other_user}","gists_url":"https://api.github.com/users/amueller/gists{/gist_id}","starred_url":"https://api.github.com/users/amueller/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amueller/subscriptions","organizations_url":"https://api.github.com/users/amueller/orgs","repos_url":"https://api.github.com/users/amueller/repos","events_url":"https://api.github.com/users/amueller/events{/privacy}","received_events_url":"https://api.github.com/users/amueller/received_events","type":"User","site_admin":false},"open_issues":184,"closed_issues":43,"state":"open","created_at":"2016-08-29T22:34:33Z","updated_at":"2016-12-05T23:09:23Z","due_on":"2016-12-31T00:00:00Z","closed_at":null},"comments":54,"created_at":"2016-07-26T14:49:38Z","updated_at":"2016-12-06T00:14:33Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/scikit-learn/scikit-learn/pulls/7084","html_url":"https://github.com/scikit-learn/scikit-learn/pull/7084","diff_url":"https://github.com/scikit-learn/scikit-learn/pull/7084.diff","patch_url":"https://github.com/scikit-learn/scikit-learn/pull/7084.patch"},"body":"Fixes #6284 \r\n\r\n`ValueDropper` transformer class that has a `missing_distribution` attribute.\r\n\r\nThis can be:\r\n* a float for MCAR missingness specifying the rate of missing values, \r\n* a 1D array of probabilities for each feature (MCAR again)\r\n* For NMAR, a dict (of float / 1D array of probabilities for each feature) mapping labels to required distribution of missing values for samples belonging to that label.\r\n\r\nRefer [this example](https://github.com/scikit-learn/scikit-learn/pull/7084/files#diff-d2bd6608c5ae31fd62b233be32095553) for a better idea.\r\n\r\n- [x] `ValueDropper` to introduce missing values.\r\n- [x] Simplify and cleanup.\r\n- [x] Add example.\r\n- [x] Tests/doc\r\n\r\nI'd add an example for #5974 which will use this function to compare the missing value handling strategy for MCAR/MNAR missingness. \r\n\r\n@agramfort @GaelVaroquaux @amueller @jnothman @glouppe @MechCoder \r\n"},"comment":{"url":"https://api.github.com/repos/scikit-learn/scikit-learn/issues/comments/265020886","html_url":"https://github.com/scikit-learn/scikit-learn/pull/7084#issuecomment-265020886","issue_url":"https://api.github.com/repos/scikit-learn/scikit-learn/issues/7084","id":265020886,"user":{"login":"jnothman","id":78827,"avatar_url":"https://avatars.githubusercontent.com/u/78827?v=3","gravatar_id":"","url":"https://api.github.com/users/jnothman","html_url":"https://github.com/jnothman","followers_url":"https://api.github.com/users/jnothman/followers","following_url":"https://api.github.com/users/jnothman/following{/other_user}","gists_url":"https://api.github.com/users/jnothman/gists{/gist_id}","starred_url":"https://api.github.com/users/jnothman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jnothman/subscriptions","organizations_url":"https://api.github.com/users/jnothman/orgs","repos_url":"https://api.github.com/users/jnothman/repos","events_url":"https://api.github.com/users/jnothman/events{/privacy}","received_events_url":"https://api.github.com/users/jnothman/received_events","type":"User","site_admin":false},"created_at":"2016-12-06T00:14:33Z","updated_at":"2016-12-06T00:14:33Z","body":"Still unsure about this being an estimator. Otherwise, LGTM"}}
{"actor":{"display_login":"jnothman"}}