{"id":226010,"date":"2020-12-15T16:02:12","date_gmt":"2020-12-15T08:02:12","guid":{"rendered":"http:\/\/4563.org\/?p=226010"},"modified":"2020-12-15T16:02:12","modified_gmt":"2020-12-15T08:02:12","slug":"pandas-%e6%93%8d%e4%bd%9c%e6%b1%82%e5%8a%a9%ef%bc%8c%e6%95%b0%e6%8d%ae%e5%a6%82%e4%b8%8b","status":"publish","type":"post","link":"http:\/\/4563.org\/?p=226010","title":{"rendered":"pandas \u64cd\u4f5c\u6c42\u52a9\uff0c\u6570\u636e\u5982\u4e0b"},"content":{"rendered":"<div>\n<div>\n<div>\n<h1>                  pandas \u64cd\u4f5c\u6c42\u52a9\uff0c\u6570\u636e\u5982\u4e0b               <\/h1>\n<p> <\/p>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : Scorpiocat <\/span>  <span><i><\/i> 5<\/span> <\/div>\n<div> <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div isfirst=\"1\">                        import numpy as np<br \/>import pandas as pd<\/p>\n<p>df = pd.DataFrame({&#8216;\u6708&#8217;:[&#8216;1&#8242;,&#8217;2&#8242;,&#8217;3&#8242;,&#8217;5&#8242;,&#8217;7&#8217;],<br \/> &#8216;\u533b\u9662&#8217;:[&#8216;\u4eba\u6c11&#8217;,&#8217;\u4e8c\u9662&#8217;,&#8217;\u4eba\u6c11&#8217;,&#8217;\u4e8c\u9662&#8217;,&#8217;\u4eba\u6c11&#8217;],<br \/> &#8216;\u9500\u91cf&#8217;:np.arange(1,10,2) })<br \/>print(df)<\/p>\n<p>df1 = df.groupby([&#8216;\u533b\u9662&#8217;,&#8217;\u6708&#8217;]).sum()<br \/>print(df1)<\/p>\n<p>list = np.arange(1,8,1)<br \/>print (list)<\/p>\n<p>#\u9700\u6c42\uff1agroupby \u4e4b\u540e\uff0c\u540c\u4e00\u533b\u9662\u7684\u6708\u4efd\u6ca1\u6709\u5728 list \u4e2d\u51fa\u73b0\uff08\u6bd4\u5982\u4eba\u6c11\u6ca1\u6709 2,4,5,6 \u6708\uff09\uff0c\u5219\u8865\u5145\u7f3a\u5931\u6708\u4efd\uff0c\u5e76\u4e14\u9500\u91cf\u6570\u636e\u4e3a 0,\u540c\u7406\u4e0b\u9762\u7684\u533b\u9662\u4e5f\u8fdb\u884c\u540c\u6837\u64cd\u4f5c      <\/p><\/div>\n<div> <b>\u5927\u4f6c\u6709\u8a71\u8aaa<\/b> (<span>10<\/span>)        <\/div>\n<div> <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<ul>\n<li data-pid=\"4577562\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : noqwerty <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div> <img decoding=\"async\" src=\"http:\/\/4563.org\/wp-content\/uploads\/2020\/12\/20201217_5fdb92ff27fc4.png\" rel=\"noreferrer\" alt=\"pandas \u64cd\u4f5c\u6c42\u52a9\uff0c\u6570\u636e\u5982\u4e0b\"><\/p>\n<p>\u53c2\u8003\u8fd9\u4e2a\u7b54\u6848\uff1a https:\/\/stackoverflow.com\/questions\/49646959\/how-can-i-include-missing-items-using-groupby-in-pandas                                                            <\/p><\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4577563\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : Scorpiocat <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u8c22\u8c22\u56de\u7b54\uff01\u6211\u8fd0\u884c\u4e86\u4e00\u4e0b\u4ee3\u7801\u6ca1\u6709\u95ee\u9898\u3002\u4f46\u662f\u600e\u4e48\u80fd\u628a\u533b\u9662\u4e2d\u7f3a\u5931\u7684\u6708\u4efd\u6570\u636e\u8865\u9f50\u53bb\u5462\uff1f<br \/>@noqwerty                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4577564\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : xyd1205148795 <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u8fd9\u4e2a\u53ef\u4ee5\u5417<br \/>df1 = df.set_index([&#8216;\u6708&#8217;,&#8217;\u533b\u9662&#8217;]).unstack()<br \/>month =pd.DataFrame(np.arange(1,8,1).T,columns=[&#8216;\u6708&#8217;])<br \/>month[&#8216;\u6708&#8217;] = month[&#8216;\u6708&#8217;].astype(&#8216;str&#8217;)<br \/>data = month.merge(df1,how=&#8217;left&#8217;,on=&#8217;\u6708&#8217;).fillna(0)<br \/>print(data)                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4577565\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : jyyx <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             df = pd.DataFrame({&#8216;\u6708&#8217;:[&#8216;1&#8242;,&#8217;2&#8242;,&#8217;3&#8242;,&#8217;5&#8242;,&#8217;7&#8217;],<br \/>&#8216;\u533b\u9662&#8217;:[&#8216;\u4eba\u6c11&#8217;,&#8217;\u4e8c\u9662&#8217;,&#8217;\u4eba\u6c11&#8217;,&#8217;\u4e8c\u9662&#8217;,&#8217;\u4eba\u6c11&#8217;],<br \/>&#8216;\u9500\u91cf&#8217;:np.arange(1,10,2) })<br \/>month_list = [&#8216;1&#8242;,&#8217;2&#8242;,&#8217;3&#8242;,&#8217;4&#8242;,&#8217;5&#8242;,&#8217;6&#8242;,&#8217;7&#8242;,&#8217;8&#8217;]<br \/>df[&#8216;\u6708&#8217;] = df[&#8216;\u6708&#8217;].astype(&#8216;category&#8217;).cat.set_categories(month_list, ordered=True)<br \/>gb = df.groupby([&#8216;\u533b\u9662&#8217;,&#8217;\u6708&#8217;]).sum().fillna(0)<br \/>print(gb)                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4577566\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : princelai <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             from itertools import product<br \/>df2 = df1.reindex(index=list(product(df1.index.get_level_values(0).unique(),[f'{i}&#8217; for i in np.arange(1,8,1)])),fill_value=0)                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4577567\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : Scorpiocat <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u6211\u7684\u60f3\u6cd5\u662f\u5148 groupbysum\uff0c\u518d\u5bf9\u6bcf\u4e00\u5bb6\u533b\u9662\u7684\u7f3a\u5931\u6708\u4efd\u6570\u636e\u8865\u9f50\uff0c\u8fd9\u4e00\u6b65\u5c31\u4e0d\u592a\u660e\u767d\u3002<br \/>\u653e\u51fa\u539f\u59cb\u6570\u636e\uff0c\u770b\u770b\u5927\u5bb6\u6709\u6ca1\u6709\u5174\u8da3\u6574\u7406\u4e00\u4e0b\u3002<br \/> <img decoding=\"async\" src=\"http:\/\/4563.org\/wp-content\/uploads\/2020\/12\/20201217_5fdb930279275.jpg\" rel=\"noreferrer\" alt=\"pandas \u64cd\u4f5c\u6c42\u52a9\uff0c\u6570\u636e\u5982\u4e0b\"> <img decoding=\"async\" src=\"http:\/\/4563.org\/wp-content\/uploads\/2020\/12\/20201217_5fdb93079494a.jpg\" rel=\"noreferrer\" alt=\"pandas \u64cd\u4f5c\u6c42\u52a9\uff0c\u6570\u636e\u5982\u4e0b\"><br \/>\u539f\u59cb\u6570\u636e<br \/>\u94fe\u63a5: https:\/\/pan.baidu.com\/s\/1zVaTeBDGzL1q_DjYrHptIQ \u63d0\u53d6\u7801: 1d2j                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4577568\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : Scorpiocat <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             @princelai @jyyx @xyd1205148795 @noqwerty                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4577569\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : princelai <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             import pandas as pd<\/p>\n<p>df = pd.read_excel(&#8220;data.xlsx&#8221;)<\/p>\n<p>df1 = df.pivot_table(index=&#8221;\u533b\u9662&#8221;,columns=&#8221;\u6708&#8221;,values=&#8221;\u603b\u8ba1&#8221;,aggfunc=&#8221;sum&#8221;).reindex(columns=range(1,13)).fillna(0).cumsum(axis=1)<br \/>df1.columns = [f&#8221;{c}\u6708&#8221; for c in df1.columns]                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4577570\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : princelai <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u4f60\u8fd9\u4e2a excel \u8868\u5c31\u80fd\u5f88\u5feb\u5b9e\u73b0\uff0c\u4e00\u5171\u4e5f\u6ca1\u591a\u5c11\u6570\u636e                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4577571\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : Scorpiocat <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             @princelai #9 \u5389\u5bb3\uff01\u8c22\u8c22\uff01\u81ea\u5df1\u521a\u5f00\u59cb\u5b66\uff0c\u5c31\u60f3\u7740\u5b9e\u6218\u4e86&#8230;                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li>\n","protected":false},"excerpt":{"rendered":"<p>pandas \u64cd\u4f5c\u6c42\u52a9\uff0c\u6570\u636e\u5982\u4e0b &hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[],"tags":[],"_links":{"self":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts\/226010"}],"collection":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=226010"}],"version-history":[{"count":0,"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts\/226010\/revisions"}],"wp:attachment":[{"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=226010"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=226010"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=226010"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}