Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/466.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么我的pandas数据帧返回多个标头?_Python_Pandas_Dataframe - Fatal编程技术网

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)
到底返回了什么吗?它是什么类型的?