<p>我假设你有:</p>
<ul>
<li><code>day_counts</code>,例如<code>pd.Series([ 332, 722, 721 ])</code></li>
<li><code>new_index = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']</code></li>
</ul>
<p>要创建结果,请从包含7个零的<em>系列</em>开始:</p>
<pre><code>dc = pd.Series(7 * [0])
</code></pre>
<p>然后用<code>day_counts</code>更新它:</p>
<pre><code>dc.update(day_counts)
</code></pre>
<p>结果是您有一个包含7个项目的系列,初始项目
从<code>day_counts</code>和剩余项=0。你知道吗</p>
<p>然后用<code>new_index</code>替换<code>dc</code>中的索引:</p>
<pre><code>dc.index = new_index
</code></pre>
<p>结果是:</p>
<pre><code>Mon 332
Tue 722
Wed 721
Thu 0
Fri 0
Sat 0
Sun 0
</code></pre>
<h2>编辑</h2>
<p>请在下面找到整个问题的一个稍微改变的解决方案,
基于<code>groupby</code>,即使没有任何辅助表和更新:</p>
<pre><code>import pandas as pd
# Source data
df = pd.DataFrame([ '2018-12-01', '2018-12-02', '2018-12-03', '2018-12-01' ],
columns=['text_timestamp'])
# Change dates from string to datetime
df.text_timestamp = pd.to_datetime(df.text_timestamp)
# Add dow column
df['dow'] = df.text_timestamp.dt.dayofweek
# Compute day counts
day_counts = df.groupby('dow')['text_timestamp'].count()\
.reindex(range(0, 7), fill_value=0)
# Change index
day_counts.index = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
</code></pre>
<p>对于上述数据,结果是:</p>
<pre><code>Mon 1
Tue 0
Wed 0
Thu 0
Fri 0
Sat 2
Sun 1
</code></pre>