{"action":"created","comment":{"url":"https://api.github.com/repos/pydata/pandas/pulls/comments/42680941","id":42680941,"diff_hunk":"@@ -13661,6 +13661,48 @@ def test_stack_unstack(self):\n         assert_frame_equal(unstacked_cols.T, self.frame)\n         assert_frame_equal(unstacked_cols_df['bar'].T, self.frame)\n \n+    def test_unstack_fill(self):\n+\n+        # GH #9746: fill_value keyword argument for Series\n+        # and DataFrame unstack\n+\n+        # From a series\n+        data = Series([1, 2, 4, 5], dtype=np.int16)\n+        data.index = MultiIndex.from_tuples(\n+            [('x', 'a'), ('x', 'b'), ('y', 'b'), ('z', 'a')])\n+\n+        result = data.unstack(fill_value=-1)\n+        expected = DataFrame({'a':[1, -1, 5], 'b':[2, 4, -1]}, index=['x', 'y', 'z'], dtype=np.int16)\n+        assert_frame_equal(result, expected)\n+\n+        # From a series with incorrect data type for fill_value\n+        result = data.unstack(fill_value=0.5)\n+        expected = DataFrame({'a':[1, 0.5, 5], 'b':[2, 4, 0.5]}, index=['x', 'y', 'z'], dtype=np.float)\n+        assert_frame_equal(result, expected)\n+\n+        # From a dataframe\n+        rows = [[1, 2], [3, 4], [5, 6], [7, 8]]\n+        df = DataFrame(rows, columns=list('AB'), dtype=np.int32)\n+        df.index = MultiIndex.from_tuples(\n+            [('x', 'a'), ('x', 'b'), ('y', 'b'), ('z', 'a')])\n+        \n+        result = df.unstack(fill_value=-1)\n+\n+        rows = [[1, 3, 2, 4], [-1, 5, -1, 6], [7, -1, 8, -1]]\n+        expected = DataFrame(rows, index=list('xyz'), dtype=np.int32)\n+        expected.columns = MultiIndex.from_tuples(\n+            [('A', 'a'), ('A', 'b'), ('B', 'a'), ('B', 'b')])\n+        assert_frame_equal(result, expected)        \n+\n+        # From a dataframe with incorrect data type for fill_value\n+        result = df.unstack(fill_value=0.5)\n+\n+        rows = [[1, 3, 2, 4], [0.5, 5, 0.5, 6], [7, 0.5, 8, 0.5]]","path":"pandas/tests/test_frame.py","position":40,"original_position":40,"commit_id":"7070031987f2848a838754a9d918faa9c71ea208","original_commit_id":"7070031987f2848a838754a9d918faa9c71ea208","user":{"login":"jreback","id":953992,"avatar_url":"https://avatars.githubusercontent.com/u/953992?v=3","gravatar_id":"","url":"https://api.github.com/users/jreback","html_url":"https://github.com/jreback","followers_url":"https://api.github.com/users/jreback/followers","following_url":"https://api.github.com/users/jreback/following{/other_user}","gists_url":"https://api.github.com/users/jreback/gists{/gist_id}","starred_url":"https://api.github.com/users/jreback/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jreback/subscriptions","organizations_url":"https://api.github.com/users/jreback/orgs","repos_url":"https://api.github.com/users/jreback/repos","events_url":"https://api.github.com/users/jreback/events{/privacy}","received_events_url":"https://api.github.com/users/jreback/received_events","type":"User","site_admin":false},"body":"test with datetime/timedelta as well","created_at":"2015-10-21T20:54:24Z","updated_at":"2015-10-21T20:54:24Z","html_url":"https://github.com/pydata/pandas/pull/10246#discussion_r42680941","pull_request_url":"https://api.github.com/repos/pydata/pandas/pulls/10246","_links":{"self":{"href":"https://api.github.com/repos/pydata/pandas/pulls/comments/42680941"},"html":{"href":"https://github.com/pydata/pandas/pull/10246#discussion_r42680941"},"pull_request":{"href":"https://api.github.com/repos/pydata/pandas/pulls/10246"}}},"pull_request":{"url":"https://api.github.com/repos/pydata/pandas/pulls/10246","id":36662562,"html_url":"https://github.com/pydata/pandas/pull/10246","diff_url":"https://github.com/pydata/pandas/pull/10246.diff","patch_url":"https://github.com/pydata/pandas/pull/10246.patch","issue_url":"https://api.github.com/repos/pydata/pandas/issues/10246","number":10246,"state":"open","locked":false,"title":"ENH: GH9746 DataFrame.unstack and Series.unstack now take fill_value …","user":{"login":"amcpherson","id":1170234,"avatar_url":"https://avatars.githubusercontent.com/u/1170234?v=3","gravatar_id":"","url":"https://api.github.com/users/amcpherson","html_url":"https://github.com/amcpherson","followers_url":"https://api.github.com/users/amcpherson/followers","following_url":"https://api.github.com/users/amcpherson/following{/other_user}","gists_url":"https://api.github.com/users/amcpherson/gists{/gist_id}","starred_url":"https://api.github.com/users/amcpherson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amcpherson/subscriptions","organizations_url":"https://api.github.com/users/amcpherson/orgs","repos_url":"https://api.github.com/users/amcpherson/repos","events_url":"https://api.github.com/users/amcpherson/events{/privacy}","received_events_url":"https://api.github.com/users/amcpherson/received_events","type":"User","site_admin":false},"body":"…kw for filling NaN when unstack results in a sparse DataFrame\r\n\r\nxref #9746 ","created_at":"2015-06-01T19:36:24Z","updated_at":"2015-10-21T20:54:24Z","closed_at":null,"merged_at":null,"merge_commit_sha":"173bd31516296b82e87c481f3c4db1352ba0be94","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/pydata/pandas/pulls/10246/commits","review_comments_url":"https://api.github.com/repos/pydata/pandas/pulls/10246/comments","review_comment_url":"https://api.github.com/repos/pydata/pandas/pulls/comments{/number}","comments_url":"https://api.github.com/repos/pydata/pandas/issues/10246/comments","statuses_url":"https://api.github.com/repos/pydata/pandas/statuses/7070031987f2848a838754a9d918faa9c71ea208","head":{"label":"amcpherson:unstackfillvalue","ref":"unstackfillvalue","sha":"7070031987f2848a838754a9d918faa9c71ea208","user":{"login":"amcpherson","id":1170234,"avatar_url":"https://avatars.githubusercontent.com/u/1170234?v=3","gravatar_id":"","url":"https://api.github.com/users/amcpherson","html_url":"https://github.com/amcpherson","followers_url":"https://api.github.com/users/amcpherson/followers","following_url":"https://api.github.com/users/amcpherson/following{/other_user}","gists_url":"https://api.github.com/users/amcpherson/gists{/gist_id}","starred_url":"https://api.github.com/users/amcpherson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amcpherson/subscriptions","organizations_url":"https://api.github.com/users/amcpherson/orgs","repos_url":"https://api.github.com/users/amcpherson/repos","events_url":"https://api.github.com/users/amcpherson/events{/privacy}","received_events_url":"https://api.github.com/users/amcpherson/received_events","type":"User","site_admin":false},"repo":{"id":33015621,"name":"pandas","full_name":"amcpherson/pandas","owner":{"login":"amcpherson","id":1170234,"avatar_url":"https://avatars.githubusercontent.com/u/1170234?v=3","gravatar_id":"","url":"https://api.github.com/users/amcpherson","html_url":"https://github.com/amcpherson","followers_url":"https://api.github.com/users/amcpherson/followers","following_url":"https://api.github.com/users/amcpherson/following{/other_user}","gists_url":"https://api.github.com/users/amcpherson/gists{/gist_id}","starred_url":"https://api.github.com/users/amcpherson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amcpherson/subscriptions","organizations_url":"https://api.github.com/users/amcpherson/orgs","repos_url":"https://api.github.com/users/amcpherson/repos","events_url":"https://api.github.com/users/amcpherson/events{/privacy}","received_events_url":"https://api.github.com/users/amcpherson/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/amcpherson/pandas","description":"Flexible and powerful data analysis / manipulation library for Python, providing labeled data structures similar to R data.frame objects, statistical functions, and much more","fork":true,"url":"https://api.github.com/repos/amcpherson/pandas","forks_url":"https://api.github.com/repos/amcpherson/pandas/forks","keys_url":"https://api.github.com/repos/amcpherson/pandas/keys{/key_id}","collaborators_url":"https://api.github.com/repos/amcpherson/pandas/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/amcpherson/pandas/teams","hooks_url":"https://api.github.com/repos/amcpherson/pandas/hooks","issue_events_url":"https://api.github.com/repos/amcpherson/pandas/issues/events{/number}","events_url":"https://api.github.com/repos/amcpherson/pandas/events","assignees_url":"https://api.github.com/repos/amcpherson/pandas/assignees{/user}","branches_url":"https://api.github.com/repos/amcpherson/pandas/branches{/branch}","tags_url":"https://api.github.com/repos/amcpherson/pandas/tags","blobs_url":"https://api.github.com/repos/amcpherson/pandas/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/amcpherson/pandas/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/amcpherson/pandas/git/refs{/sha}","trees_url":"https://api.github.com/repos/amcpherson/pandas/git/trees{/sha}","statuses_url":"https://api.github.com/repos/amcpherson/pandas/statuses/{sha}","languages_url":"https://api.github.com/repos/amcpherson/pandas/languages","stargazers_url":"https://api.github.com/repos/amcpherson/pandas/stargazers","contributors_url":"https://api.github.com/repos/amcpherson/pandas/contributors","subscribers_url":"https://api.github.com/repos/amcpherson/pandas/subscribers","subscription_url":"https://api.github.com/repos/amcpherson/pandas/subscription","commits_url":"https://api.github.com/repos/amcpherson/pandas/commits{/sha}","git_commits_url":"https://api.github.com/repos/amcpherson/pandas/git/commits{/sha}","comments_url":"https://api.github.com/repos/amcpherson/pandas/comments{/number}","issue_comment_url":"https://api.github.com/repos/amcpherson/pandas/issues/comments{/number}","contents_url":"https://api.github.com/repos/amcpherson/pandas/contents/{+path}","compare_url":"https://api.github.com/repos/amcpherson/pandas/compare/{base}...{head}","merges_url":"https://api.github.com/repos/amcpherson/pandas/merges","archive_url":"https://api.github.com/repos/amcpherson/pandas/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/amcpherson/pandas/downloads","issues_url":"https://api.github.com/repos/amcpherson/pandas/issues{/number}","pulls_url":"https://api.github.com/repos/amcpherson/pandas/pulls{/number}","milestones_url":"https://api.github.com/repos/amcpherson/pandas/milestones{/number}","notifications_url":"https://api.github.com/repos/amcpherson/pandas/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/amcpherson/pandas/labels{/name}","releases_url":"https://api.github.com/repos/amcpherson/pandas/releases{/id}","created_at":"2015-03-28T00:37:09Z","updated_at":"2015-03-28T00:37:14Z","pushed_at":"2015-10-21T17:17:02Z","git_url":"git://github.com/amcpherson/pandas.git","ssh_url":"git@github.com:amcpherson/pandas.git","clone_url":"https://github.com/amcpherson/pandas.git","svn_url":"https://github.com/amcpherson/pandas","homepage":"http://pandas.pydata.org","size":65629,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"pydata:master","ref":"master","sha":"b09b84e8e0baf89e78b618cdda30af11087d2e4a","user":{"login":"pydata","id":1284191,"avatar_url":"https://avatars.githubusercontent.com/u/1284191?v=3","gravatar_id":"","url":"https://api.github.com/users/pydata","html_url":"https://github.com/pydata","followers_url":"https://api.github.com/users/pydata/followers","following_url":"https://api.github.com/users/pydata/following{/other_user}","gists_url":"https://api.github.com/users/pydata/gists{/gist_id}","starred_url":"https://api.github.com/users/pydata/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pydata/subscriptions","organizations_url":"https://api.github.com/users/pydata/orgs","repos_url":"https://api.github.com/users/pydata/repos","events_url":"https://api.github.com/users/pydata/events{/privacy}","received_events_url":"https://api.github.com/users/pydata/received_events","type":"Organization","site_admin":false},"repo":{"id":858127,"name":"pandas","full_name":"pydata/pandas","owner":{"login":"pydata","id":1284191,"avatar_url":"https://avatars.githubusercontent.com/u/1284191?v=3","gravatar_id":"","url":"https://api.github.com/users/pydata","html_url":"https://github.com/pydata","followers_url":"https://api.github.com/users/pydata/followers","following_url":"https://api.github.com/users/pydata/following{/other_user}","gists_url":"https://api.github.com/users/pydata/gists{/gist_id}","starred_url":"https://api.github.com/users/pydata/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pydata/subscriptions","organizations_url":"https://api.github.com/users/pydata/orgs","repos_url":"https://api.github.com/users/pydata/repos","events_url":"https://api.github.com/users/pydata/events{/privacy}","received_events_url":"https://api.github.com/users/pydata/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/pydata/pandas","description":"Flexible and powerful data analysis / manipulation library for Python, providing labeled data structures similar to R data.frame objects, statistical functions, and much more","fork":false,"url":"https://api.github.com/repos/pydata/pandas","forks_url":"https://api.github.com/repos/pydata/pandas/forks","keys_url":"https://api.github.com/repos/pydata/pandas/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pydata/pandas/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pydata/pandas/teams","hooks_url":"https://api.github.com/repos/pydata/pandas/hooks","issue_events_url":"https://api.github.com/repos/pydata/pandas/issues/events{/number}","events_url":"https://api.github.com/repos/pydata/pandas/events","assignees_url":"https://api.github.com/repos/pydata/pandas/assignees{/user}","branches_url":"https://api.github.com/repos/pydata/pandas/branches{/branch}","tags_url":"https://api.github.com/repos/pydata/pandas/tags","blobs_url":"https://api.github.com/repos/pydata/pandas/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pydata/pandas/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pydata/pandas/git/refs{/sha}","trees_url":"https://api.github.com/repos/pydata/pandas/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pydata/pandas/statuses/{sha}","languages_url":"https://api.github.com/repos/pydata/pandas/languages","stargazers_url":"https://api.github.com/repos/pydata/pandas/stargazers","contributors_url":"https://api.github.com/repos/pydata/pandas/contributors","subscribers_url":"https://api.github.com/repos/pydata/pandas/subscribers","subscription_url":"https://api.github.com/repos/pydata/pandas/subscription","commits_url":"https://api.github.com/repos/pydata/pandas/commits{/sha}","git_commits_url":"https://api.github.com/repos/pydata/pandas/git/commits{/sha}","comments_url":"https://api.github.com/repos/pydata/pandas/comments{/number}","issue_comment_url":"https://api.github.com/repos/pydata/pandas/issues/comments{/number}","contents_url":"https://api.github.com/repos/pydata/pandas/contents/{+path}","compare_url":"https://api.github.com/repos/pydata/pandas/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pydata/pandas/merges","archive_url":"https://api.github.com/repos/pydata/pandas/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pydata/pandas/downloads","issues_url":"https://api.github.com/repos/pydata/pandas/issues{/number}","pulls_url":"https://api.github.com/repos/pydata/pandas/pulls{/number}","milestones_url":"https://api.github.com/repos/pydata/pandas/milestones{/number}","notifications_url":"https://api.github.com/repos/pydata/pandas/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pydata/pandas/labels{/name}","releases_url":"https://api.github.com/repos/pydata/pandas/releases{/id}","created_at":"2010-08-24T01:37:33Z","updated_at":"2015-10-21T13:47:31Z","pushed_at":"2015-10-21T17:17:07Z","git_url":"git://github.com/pydata/pandas.git","ssh_url":"git@github.com:pydata/pandas.git","clone_url":"https://github.com/pydata/pandas.git","svn_url":"https://github.com/pydata/pandas","homepage":"http://pandas.pydata.org","size":163228,"stargazers_count":5148,"watchers_count":5148,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":2021,"mirror_url":null,"open_issues_count":1489,"forks":2021,"open_issues":1489,"watchers":5148,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/pydata/pandas/pulls/10246"},"html":{"href":"https://github.com/pydata/pandas/pull/10246"},"issue":{"href":"https://api.github.com/repos/pydata/pandas/issues/10246"},"comments":{"href":"https://api.github.com/repos/pydata/pandas/issues/10246/comments"},"review_comments":{"href":"https://api.github.com/repos/pydata/pandas/pulls/10246/comments"},"review_comment":{"href":"https://api.github.com/repos/pydata/pandas/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/pydata/pandas/pulls/10246/commits"},"statuses":{"href":"https://api.github.com/repos/pydata/pandas/statuses/7070031987f2848a838754a9d918faa9c71ea208"}}}}