#python #r #конвертация
Доброго времени суток. Учу python ну и собственно хочу перевести код с R и очень интересует следующий вопрос: Как удобнее всего было бы реализовать сравнение данных из таблицы excel с критериями, которые вводятся в скрипте, как это сделано в скрипте R? a <- as.numeric(readline(prompt="Введите количество рабочих на вашем предприятии: 1, если меньше 8,5 тыс.чел, 2 в противном случае: ")) b<-as.numeric(readline(prompt="Введите тип вашей индустрии: 2, если высокодоходная, 1 в противном случае: ")) c<-as.numeric(readline(prompt="Введите производительность труда вашего предприятия в тыс. руб./чел: ")) d<-as.numeric(readline(prompt="Введите рентабельность компании в %: ")) e<-as.numeric(readline(prompt="Введите темп роста компании в %: ")) tryCatch( { localenv <- environment() asde<-work_file[as.numeric(work_file$WORKER)==a & as.numeric(work_file$OTRASL)==b & (work_file$PROISVOD>c-500 & work_file$PROISVODd/100-0.2 & work_file$RENTAB e/100-0.3 & work_file$TEMP Ответы
Ответ 1
Начать можно с такого варианта: import pandas as pd url = r'd:/download/data.xlsx' # читаем Excel в Pandas DataFrame df = pd.read_excel(url) # это нужно будет переделать на ввод текста # или можно читать это из другого CSV/Excel файла a = 1 b = 1 c = 1000 d = 50 e = 80 # query ... qry = ''' WORKER == @a & \ OTRASL == @b & \ PROISVOD > @c-500 & PROISVOD < @c+500 & \ RENTAB > @d/100-0.2 & RENTAB < @d/100+0.2 & \ TEMP > @e/100-0.3 & TEMP < @e/100+0.3 \ ''' print(df.query(qry)) Output: КОМП НОМЕР REAL TEMP RENTAB PROISVOD OTRASL WORKER 25 Башнефть 18 36948.0 0.833 0.329 838.1 1 1 112 Норильск 6 134617.0 0.878 0.394 1402.1 1 1
Комментариев нет:
Отправить комментарий