{"kind":"task","effective_mode":"full","benchmark":{"kind":"benchmark","effective_mode":"full","slug":"ds-1000","formal_name":"DS-1000","introduction":"DS-1000 builds 1,000 data-science problems from real StackOverflow questions across seven libraries including NumPy, Pandas and Matplotlib. The problems are perturbed so that recalling the original answer does not solve them.","introduction_ja":"","introduction_en":"","category":"Category not supplied","task_count":null,"acquisition_status":"Acquisition status not supplied","official_url":"https://ds1000-code-gen.github.io/","indexing_mode":"noindex","profile":{"resources":[],"task_format":"","scoring":"","metric":"","size":"","answer_access":"","license":"","citation":"","maintainer":"","released":"","why_hard":"","related":[]}},"task_id":"e3c6e1a0-7374-5e2f-af82-5a4bb957bd3d","task_key":"default--test--149","task_revision_id":"2","upstream_id":"149","short_description":"Example","config":"default","split":"test","body":"{\"prompt\":\"Problem:\\nExample\\nimport pandas as pd\\nimport numpy as np\\nd = {'l':  ['left', 'right', 'left', 'right', 'left', 'right'],\\n     'r': ['right', 'left', 'right', 'left', 'right', 'left'],\\n     'v': [-1, 1, -1, 1, -1, np.nan]}\\ndf = pd.DataFrame(d)\\n\\n\\nProblem\\nWhen a grouped dataframe contains a value of np.NaN I want the grouped sum to be NaN as is given by the skipna=False flag for pd.Series.sum and also pd.DataFrame.sum however, this\\nIn [235]: df.v.sum(skipna=False)\\nOut[235]: nan\\n\\n\\nHowever, this behavior is not reflected in the pandas.DataFrame.groupby object\\nIn [237]: df.groupby('r')['v'].sum()['right']\\nOut[237]: 2.0\\n\\n\\nand cannot be forced by applying the np.sum method directly\\nIn [238]: df.groupby('r')['v'].apply(np.sum)['right']\\nOut[238]: 2.0\\n\\n\\ndesired:\\nr\\nleft     NaN\\nright   -3.0\\nName: v, dtype: float64\\n\\n\\nA:\\n<code>\\nimport pandas as pd\\nimport numpy as np\\n\\n\\nd = {'l':  ['left', 'right', 'left', 'right', 'left', 'right'],\\n     'r': ['right', 'left', 'right', 'left', 'right', 'left'],\\n     'v': [-1, 1, -1, 1, -1, np.nan]}\\ndf = pd.DataFrame(d)\\n</code>\\nresult = ... # put solution in this variable\\nBEGIN SOLUTION\\n<code>\\n\"}","display_format":"code","language":"","answer_status":"published","assets":[],"source_url":"https://ds1000-code-gen.github.io/","history":"initial import","indexing_mode":"noindex","subproblems":[],"grids":[]}