创建基于类别值新列我有两个dataframes:Python的大熊猫:从另一个数据帧
dfA
,其中包含成千上万的温度数据线。每个温度值链接到从不同物体测量的值(1,2,3,...,n),以便重复时间IDdfB
包含标识每个时间ID的标签。这些标签都是正确的日期/时间(date
)值
现在,我想在dfA
,其中包含对应于右timeID
正确date
值来创建一个新列。我怎样才能做到这一点?
下面是我有数据集的几行,作为一个例子:
dfA = pd.DataFrame({'timeID': ['1', '2', '3','2','3','4'], 'temp': ['4.5', '5.1', '4.0','-2.3','3.9','-1.1']})
dfB = pd.DataFrame(pd.date_range('6/24/2013', periods=6, freq='10Min'))
seq = pd.Series(range(1, 7)).to_frame()
dfB = pd.concat([seq,dfB],axis=1)
dfB.columns = ['timeID','date']
dfB.set_index('timeID',inplace=True)
print(dfA)
print(dfB)
为dfA
的输出是:
| temp timeID
+-----------------
| 0 4.5 1
| 1 5.1 2
| 2 4.0 3
| 3 -2.3 2
| 4 3.9 3
| 5 -1.1 4
为dfB
的输出是:
| date
| timeID
+----------------------------
| 1 2013-06-24 00:00:00
| 2 2013-06-24 00:10:00
| 3 2013-06-24 00:20:00
| 4 2013-06-24 00:30:00
| 5 2013-06-24 00:40:00
| 6 2013-06-24 00:50:00
真棒!非常感谢!我已经按照第二个选项中的建议转换了'timeID' dtype - 它工作得很好! – mmeclimate
@mmeclimate,很高兴我能帮上忙。 ;) – MaxU