我正在尝试使用Pandas的功能将其他数据帧添加到一起,但我尝试这样做的方式并没有真正解决。通常,两个数据帧将具有相同的几行(应添加其值),以及一些不同的行(并且应该连接在一起)。但是,索引也可能不同。如下:
func (d *Tom) Get() {
//passengersFile, err := http.Get("https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol=MSFT&interval=1min&apikey=KLMH2VFJ0LCFNOX5")
resp, err := http.Get("https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol=MSFT&interval=1min&apikey=KLMH2VF0LCFNOX5")
if err != nil {
panic(err)
}
defer resp.Body.Close()
//fmt.Printf("%#v\n", resp)
dec := json.NewDecoder(resp.Body)
if dec == nil {
panic("Failed to start decoding JSON data")
}
json_map := make(map[string]interface{})
err = dec.Decode(&json_map)
for k, v := range json_map {
if k == "Meta Data"{
continue
}
fmt.Printf("key[%s] value[%s]\n", k, v)
}
if err != nil {
panic(err)
}
d.Data["json"] = &json_map
d.ServeJSON()
}
我尝试了一些事情,但并没有真正让它工作,因为在生成nans之后会调用任何not_null或fill_na内容。
答案 0 :(得分:0)
new_idx = df1.index.union(df2.index)
new_cols = df2.columns.union(df2.columns)
new_df = df1.loc[new_idx, new_cols].fillna(0) + df2.loc[new_idx, new_cols].fillna(0)
编辑: 实际上你可以使用
new_df = df1.add(df2, fill_value=0)