Python 为什么我的pandas数据帧返回多个标头?
我创建了一个函数来从电子表格返回一组变量。我试图返回到一个数据帧而不是一个元组,得到了结果。问题是它通过每一行返回标题(见图)。抱歉,如果这是一个简单的修复,我是新的!谢谢大家! 在:Python 为什么我的pandas数据帧返回多个标头?,python,pandas,dataframe,Python,Pandas,Dataframe,我创建了一个函数来从电子表格返回一组变量。我试图返回到一个数据帧而不是一个元组,得到了结果。问题是它通过每一行返回标题(见图)。抱歉,如果这是一个简单的修复,我是新的!谢谢大家! 在: 好吧,问题是您在列表c中写入了多个数据帧。如果您打印它,它将显示列出的所有数据帧。相反,您可以将它们添加到一个数据帧: def get_holdings_info_array(): c=pd.DataFrame() 对于f in holdings_darray: c=c.append(获取信息(f),忽略索引=T
好吧,问题是您在列表
c
中写入了多个数据帧。如果您打印它,它将显示列出的所有数据帧。相反,您可以将它们添加到一个数据帧:
def get_holdings_info_array():
c=pd.DataFrame()
对于f in holdings_darray:
c=c.append(获取信息(f),忽略索引=True)
返回(c)
嗯,问题是您在列表c
中写入了多个数据帧。如果您打印它,它将显示列出的所有数据帧。相反,您可以将它们添加到一个数据帧:
def get_holdings_info_array():
c=pd.DataFrame()
对于f in holdings_darray:
c=c.append(获取信息(f),忽略索引=True)
返回(c)
您好,您应该试试这段代码
df = pd.DataFrame([date,sbhmv,sbhbv,sbhs,setfhmv,setthbv,setfhs,smmhmv,smmhbv,smmhs])
df = df.T
df.columns =['Date',
'Bond Market Value',
'Bond Book Value',
'Bond Shares',
'ETF Market Value',
'ETF Book Value',
'ETF Shares',
'Money Market Market Value',
'Money Market Book Value',
'Money Market Shares']
return df
而不是:
return pd.DataFrame({'Date': [date], 'Bond Market Value':[sbhmv], 'Bond Book Value':[sbhbv], 'Bond Shares':[sbhs], 'ETF Market Value': [setfhmv], 'ETF Book Value' : [setthbv], 'ETF Shares': [setfhs], 'Money Market Market Value':[smmhmv], 'Money Market Book Value': [smmhbv], 'Money Market Shares':[smmhs]}
, columns=['Date', 'Bond Market Value', 'Bond Book Value', 'Bond Shares', 'ETF Market Value', 'ETF Book Value', 'ETF Shares', 'Money Market Market Value', 'Money Market Book Value', 'Money Market Shares'])
嗨,你应该试试这个代码
df = pd.DataFrame([date,sbhmv,sbhbv,sbhs,setfhmv,setthbv,setfhs,smmhmv,smmhbv,smmhs])
df = df.T
df.columns =['Date',
'Bond Market Value',
'Bond Book Value',
'Bond Shares',
'ETF Market Value',
'ETF Book Value',
'ETF Shares',
'Money Market Market Value',
'Money Market Book Value',
'Money Market Shares']
return df
而不是:
return pd.DataFrame({'Date': [date], 'Bond Market Value':[sbhmv], 'Bond Book Value':[sbhbv], 'Bond Shares':[sbhs], 'ETF Market Value': [setfhmv], 'ETF Book Value' : [setthbv], 'ETF Shares': [setfhs], 'Money Market Market Value':[smmhmv], 'Money Market Book Value': [smmhbv], 'Money Market Shares':[smmhs]}
, columns=['Date', 'Bond Market Value', 'Bond Book Value', 'Bond Shares', 'ETF Market Value', 'ETF Book Value', 'ETF Shares', 'Money Market Market Value', 'Money Market Book Value', 'Money Market Shares'])
我想您需要一个2行10列的数据框来描述这些值。所以你必须使用
data = [date,sbhmv,sbhbv,sbhs,setfhmv,setthbv,setfhs,smmhmv,smmhbv,smmhs]
columns = ['Date','Bond Market Value','Bond Book Value','Bond Shares','ETF Market Value','ETF Book Value', 'ETF Shares','Money Market Market Value','Money Market Book Value','Money Market Shares']
df = pd.DataFrame(data, columns)
而不是:
pd.DataFrame({'Date': [date], 'Bond Market Value':[sbhmv], 'Bond Book Value':[sbhbv], 'Bond Shares':[sbhs], 'ETF Market Value': [setfhmv], 'ETF Book Value' : [setthbv], 'ETF Shares': [setfhs], 'Money Market Market Value':[smmhmv], 'Money Market Book Value': [smmhbv], 'Money Market Shares':[smmhs]}
, columns=['Date', 'Bond Market Value', 'Bond Book Value', 'Bond Shares', 'ETF Market Value', 'ETF Book Value', 'ETF Shares', 'Money Market Market Value', 'Money Market Book Value', 'Money Market Shares'])
我想您需要一个2行10列的数据框来描述这些值。所以你必须使用
data = [date,sbhmv,sbhbv,sbhs,setfhmv,setthbv,setfhs,smmhmv,smmhbv,smmhs]
columns = ['Date','Bond Market Value','Bond Book Value','Bond Shares','ETF Market Value','ETF Book Value', 'ETF Shares','Money Market Market Value','Money Market Book Value','Money Market Shares']
df = pd.DataFrame(data, columns)
而不是:
pd.DataFrame({'Date': [date], 'Bond Market Value':[sbhmv], 'Bond Book Value':[sbhbv], 'Bond Shares':[sbhs], 'ETF Market Value': [setfhmv], 'ETF Book Value' : [setthbv], 'ETF Shares': [setfhs], 'Money Market Market Value':[smmhmv], 'Money Market Book Value': [smmhbv], 'Money Market Shares':[smmhs]}
, columns=['Date', 'Bond Market Value', 'Bond Book Value', 'Bond Shares', 'ETF Market Value', 'ETF Book Value', 'ETF Shares', 'Money Market Market Value', 'Money Market Book Value', 'Money Market Shares'])
ValueError:传递值的形状是(10,1),索引暗示(10,10)
是我得到的替换列=[“Date”,…]为索引=['Date”,…]ValueError:传递值的形状是(10,1),索引暗示(10,10)
是我得到的替换列=[“Date”,…]为索引=['Date”,…]TypeError:无法连接类型为“”的对象;只有Series和DataFrame OBJ是有效的
是我从thatwell得到的,在这种情况下,您的函数似乎不会返回数据帧。。你能告诉我get\u holdings\u info(f)
到底返回了什么吗?它是什么类型?TypeError:无法连接类型为“”的对象;只有Series和DataFrame OBJ是有效的
是我从thatwell得到的,在这种情况下,您的函数似乎不会返回数据帧。。你能告诉我get\u holdings\u info(f)
到底返回了什么吗?它是什么类型的?