Я загружал свои данные из отдельных CSV-файлов в кадр данных, используя
df = pd.read_csv('data.csv', names=col_names, sep=',', skiprows=1)
col_names = ['created_date', 'latitude', 'longitude']
Это позволило бы аккуратно разделить мои данные на фреймы столбцов и пропустить первую строку с метками строк
Однако я хотел автоматизировать процесс, используя цикл for, который делал одинаковые запросы для каждого пользователя.Моя функция выглядит следующим образом:
sql = "select distinct mobile_user_id from score where speed_range_id > 1"
distance_query = """SELECT created_date, latitude, longitude FROM score s where s.mobile_user_id = %(mobile_user_id)s and speed_range_id > 1 group by latitude, longitude order by id asc"""
cursor1.execute(sql)
result = cursor1.fetchall()
for rowdict in result:
distance = cursor3.execute(distance_query, rowdict)
distance_result = cursor3.fetchall()
df = pd.read_sql_query(distance_query, rdsConn, params={rowdict})
Как вы можете видеть здесь, переменная результата содержит список пользователей, и я хочу перебрать всех пользователей, чтобы сгенерировать набор данных для каждого пользователя.
Я пытался использовать pd.read_sql_query
, но мне не удалось передать в запрос параметр мобильного пользователя, равный rowdict
.
Как мне поступить, чтобы яможно передать эту переменную с помощью панд?Как мне организовать свои данные так, как они у меня были раньше?
образец data.csv:
created_date, latitude, longitude
"2018-05-24 17:46:25", 20.61844841, -100.40813424
"2018-05-24 21:03:02", 20.58469452, -100.39204018
"2018-05-25 10:29:57", 20.61180308, -100.40826959
"2018-05-25 21:02:43", 20.59868518, -100.37825344
Любая помощь приветствуется.