我正在从Google表格中读取数据,并能够成功将其获取:
header = result.get('values', [])[0] #First line is column names
values = result.get('values', [])[1:] #Everything else is data
然后,我要这样做:
if not values:
print('No data found.')
else:
df = pd.DataFrame(data=values, columns=header)
print(df.head(10))
但我遇到错误:
AssertionError:传递了26列,传递的数据有14列
如果我打印标题或值,则表示我已成功获取列表中的数据。
答案 0 :(得分:1)
首先,您可以使数据框具有当前值,然后再将其余的列与NaN
和concat
一起创建一个数据框:
df = pd.DataFrame(data=values, columns=header[:14])
df2 = pd.DataFrame({head : [np.NaN]*len(df) for head in header[14:]})
df_final = pd.concat([df, df2], axis=1)
问:您怎么知道5297中的列将为14
A:由于您的值包含行,因此数据中的行数为5297。