означает, что не для какой-либо записи таблицы поиска может быть точка данных в DF_SIZE существующее. df_size ['diameter_min'] и df_size ['diameter_max'] и добавить найденные значения как три новых столбца ['sms'], ['sms_min'], ['sms_max'] к Dataframe DataFrame 'DF_SIZE'. Причины -As ожидается - valueError: < /p>
due to multiple columns that would be set to one for all three lines of code.
Alternatively I tried solutions with apply and with map but it seems that I miss something (here example for the diameter_mean-column only):
У меня есть небольшой пандас, содержащий данные, содержащие только несколько строк и три столбца: < /p> [code]import pandas as pd df_size = pd.DataFrame([[0.510,0.450,0.540], [0.899,0.820,1.150], [1.745,1.587,2.020], [2.020,1.745,2.405], ], columns=['diameter_mean', 'diameter_min','diameter_max']) < /code> Второй DataFrame содержит (намного длиннее) таблицу поиска: < /p> df_lookup = pd.DataFrame([[0.450,0.021548], [0.510,0.021791], [0.540,0.022038], [0.565,0.022289], [0.695,0.022545], [0.720,0.034321], [0.770,1.292340], [0.820,1.296070], [0.899,1.302340], [1.150,2.311770], [1.361,3.325140], [1.587,4.144621], [1.745,3.498933], [2.020,3.512665], [2.405,3.610773], ], columns=['diameter', 'SMS']) [/code] означает, что не для какой-либо записи таблицы поиска может быть точка данных в DF_SIZE существующее. df_size ['diameter_min'] и df_size ['diameter_max'] и добавить найденные значения как три новых столбца ['sms'], ['sms_min'], ['sms_max'] к Dataframe DataFrame 'DF_SIZE'. Причины -As ожидается - valueError: < /p> [code]df_size['SMS'] = df_size.merge(df_lookup, left_on='diameter_mean', right_on='diameter') df_size['SMS_min'] = df_size.merge(df_lookup, left_on='diameter_min', right_on='diameter') df_size['SMS_max'] = df_size.merge(df_lookup, left_on='diameter_max', right_on='diameter') [/code] due to multiple columns that would be set to one for all three lines of code. Alternatively I tried solutions with apply and with map but it seems that I miss something (here example for the diameter_mean-column only): [code]df_size['SMS'].apply(lambda df_lookup.SMS: df_lookup['diameter'][(df_size['diameter_mean'])].values[0]) < /code> вызывает ошибку ключа. < /p> Цель df_size будет выглядеть как: < /p> df_size 'diameter_mean' 'diameter_min' 'diameter_max' 'SMS' 'SMS_min' 'SMS_max' 0.510 0.450 0.540 0.021791 0.021548 0.022038 0.899 0.820 1.150 1.302340 1.296070 2.311770 1.745 1.587 2.020 3.498933 4.144621 3.512665 2.020 1.745 2.405 3.512665 3.498933 3.610773 [/code] Необходимо ли это, кстати, что оба фрейма имеют сильное монотонное поведение в термах параметра поиска (= диаметр)?
У меня есть небольшой фрейм данных pandas, содержащий данные всего из нескольких строк и трех столбцов:
import pandas as pd
df_size = pd.DataFrame([ ,
,
,
,
], columns= )
второй фрейм данных содержит (гораздо длинную) таблицу поиска:...
У меня есть небольшой фрейм данных pandas, содержащий данные всего из нескольких строк и трех столбцов:
import pandas as pd
df_size = pd.DataFrame([ ,
,
,
,
], columns= )
второй фрейм данных содержит (гораздо длинную) таблицу поиска:...
У меня есть небольшой фрейм данных pandas, содержащий данные всего из нескольких строк и трех столбцов:
import pandas as pd
df_size = pd.DataFrame([ ,
,
,
,
], columns= )
второй фрейм данных содержит (гораздо длинную) таблицу поиска:...
Я собираюсь заменить значения в данных данных со значениями во втором DataFrame, сопоставляя значения в первом DataFrame с столбцами из второго DataFrame.
Пример:
import numpy as np
import pandas as pd
dt_index = pd.to_datetime( )
df =...
У меня есть кадр искра данных (df1) с конкретной схемой, и у меня есть другой флажок данных с одинаковыми столбцами, но с другой схемой. Я знаю, как сделать это в столбце по столбцу, но, поскольку у меня есть большой набор столбцов, это было бы...