Чтение целочисленных и числовых данных с плавающей запятой с использованием Google Sheet APIPython

Программы на Python
Ответить
Anonymous
 Чтение целочисленных и числовых данных с плавающей запятой с использованием Google Sheet API

Сообщение Anonymous »

Я использую API Google Sheets для получения данных из листа, где числа используют европейский языковой стандарт. Входные данные в Google Таблице выглядят следующим образом:


product_price показы клики ctr avg_click_price total_spentorders
2296,00 2184 117 5,36 12,63 1478 ,20 3


Однако, когда я получаю данные с помощью worksheet.get_all_records() и обработайте его на Python, числа будут интерпретированы неверно. Например, я получаю:

product_price показы клики ctr avg_click_price общее_израсходованное количество заказов
229600 2184 117 536 1263 147820 3



Вот часть моего кода для обработки данные:

Код: Выделить всё

sheet_data = worksheet.get_all_records()

# Processing integer columns
for col in integer_columns:
if col in df.columns:
logger.info(f"Processing integer column {col}...")
df[col] = (
df[col]
.astype(str)  # Convert to string
.str.replace("\u00A0", "")  # Remove non-breaking spaces
.str.replace(" ", "")  # Remove regular spaces
.str.extract(r"(\d+,.-)")  # Keep only digits
.apply(locale.atof)  # Convert to float based on locale
)
Я подозреваю, что проблема связана с тем, как анализируются числа с запятыми и точками (например, 2296,00). Google Таблицы в локали pl_PL. Локаль, похоже, игнорируется, а числа с плавающей запятой умножаются на 100.

Как я могу правильно анализировать и обрабатывать числа с плавающей запятой и целые числа в этом формате с помощью Python, чтобы выходные данные соответствовали исходным значениям без создания двух циклов для целых и целых чисел? числа с плавающей запятой?

Подробнее здесь: https://stackoverflow.com/questions/792 ... -sheet-api
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»