BigQuery округляет десятичные дроби до нуля при загрузке CSV-файла

# #python #pandas #csv #google-bigquery #google-cloud-storage

Вопрос:

Я пытался загрузить csv-файл из GCS в BigQuery, и он продолжает округлять десятичные дроби в одном столбце до нуля, независимо от того, что я пытаюсь.

Исходные данные представляют собой csv-файл, и он выглядит так, когда я загружаю его с Пандами:

     User    Prob  Date
0   2036312 0.35  2021-08-05
1   2285452 0.02  2021-08-05
2   2285462 0.10  2021-08-05
3   2285472 0.10  2021-08-05
4   2285482 0.10  2021-08-05
 

Когда я загружаю его в BigQuery, он выглядит так:

 Row  User    Prob   Date    
1    2218472  0.0    2021-08-05
2    2241002  0.0    2021-08-05
3    2243352  0.0    2021-08-05
4    2248842  0.0    2021-08-05
5    2258942  0.0    2021-08-05
 

Я попытался автоматически определить схему, и она загружается с плавающей точкой, я попытался написать схему вручную и передать столбец как числовой, а также как строку, и я получаю точно такой же результат (все числа округлены до 0,0).

Я в растерянности! Что еще я могу попробовать и почему это происходит?

Комментарии:

1. когда я загружаю Pandas, тип данных этого столбца-float64

2. Может ли быть так, что числа в csv формируются в виде строки? В худшем случае, начиная с пробела? Не могли бы вы для теста импортировать этот столбец в виде строки и продолжить исследование этого столбца, проанализировав его с помощью большого запроса?

3. Как вы загружаете файл в BigQuery? По Коду? С консолью? Что ты делаешь?

4. @guillaumeblaquiere Я загружаю его с консоли

Ответ №1:

Вы можете попробовать преобразовать столбец в строку в Python Pandas. Теоретически вы должны определить его как строку в схеме при загрузке в большой запрос GCP.