我正在尝试从bigquery构建一个结果数组,并且在创建关联数组时遇到了问题。期望的结果是包含具有所有结果的关联数组的数组。
这是我拥有的,以及它产生的东西:
//get the headings
$headings = $response->getSchema()->getFields();
//make headings array
$headingArray = array();
//loop through this array and build another array of just the names
foreach ($headings as $key => $val) {
//each column heading:
$headingArray[] = $val->name;
}
$finalArray = array();
foreach ($response->getRows() as $row => $data){
$i = 0;
foreach($data['modelData']['f'] as $k => $v){
//echo $k;
//print_r($v);
$tempData = $result[$row][$response['modelData']['schema']['fields'][$k]['name']] = $v['v'];
$finalArray[$i][$headingArray[$k]] = $tempData;
}
$i++;
}
只生成第一个结果(应该有9个):
Array
(
[0] => Array
(
[firstName] => Dillon
[lastName] => Landman
[address] => 9044 Smith Hall
[city] => Boulder
[zip] => 80310
)
)
如果我只是print_r所有的行有9个响应,那么最后的数组应该有9个键,每个键包含一个带有列标题=>的关联数组。来自那[0]行的数据。
感谢您的帮助,我一直在努力寻找文档而且很少。此API也会导出大量其他数据,这就是为什么我需要此代码才能显示列标题和结果。
答案 0 :(得分:1)
您正在重复foreach ($response->getRows() as $row => $data){
$i = 0;
每次迭代。
$i = 0;
foreach ($response->getRows() as $row => $data){
把它放在循环外面。
import pandas as pd
all_ages = pd.read_csv("all-ages.csv")
all_ages.head(5)