• Как заставить питон преобразовать значения столбца к формату?

    @CrimsonFox Автор вопроса
    Добрый день!
    в общем я переделал этот ужас и выходит следующее
    import re
    import pandas as pd
    F1 = df['Номер ИД'].astype(str).apply(str).apply(lambda x: re.findall(r'(\d{1,2}/\d-\d{3,4}/\d{2,3}/)', x))
    f2 = df['Номер ИД'].astype(str).apply(str).apply(lambda x: re.findall(r'(\d{9})', x))
    df['Номер ИД формат'] = F1 + f2
    df.to_excel('df.xlsx', index=False)

    по логике он должен просмотреть экселевский столбец ['Номер ИД'], найти в нём соответствующие формату части строки и записать их в столбец с аналогичным индексом ['Номер ИД формат']
    но в итоге он (в указанном коде) выводит [], при изменениях максимум дублит первый столбец
    не подскажешь, что я не так делаю
  • Как связать таблицы через две промежуточные?

    @CrimsonFox Автор вопроса
    Alfieros, а если мне надо взять только квартиры на этаже (всё это в room) для поиска для формирования отчета
    в то время как данные берутся в основе из habitation и других связанных с ней бд
    сам room связан c habitation только посредством цепочки id(habitation)->habitation_id(habitationPlace)->place_id(place)->room_id(room)
    новые таблицы я создавать не могу
    цепочка есть и работает, но программа (второй фрагмент кода) игнорирует переменную level_id(хотя в логах обращение к ней есть и оно работает, правда не оказывая влияние на habitation, что, собственно, мне и осталось исправить)
    и вопрос в следующем, мне надо создавать коллекцию для всех параметров или есть более компактный способ привязать результат поиска по этажам к остальным параметрам?
    если возможно с кодом. я в laravel не сильно разбираюсь, а дедлайн близко..
    заранее спасибо
  • Как связать несколько переменных по разным бд в общий запрос?

    @CrimsonFox Автор вопроса
    JhaoDa, не связь, а описанная в модели функция получения значений из room
    public function places() {
            return $this->hasMany('App\Habitationplace', 'habitation_id', 'id');
        }
    
        public function room() {
            $habitationPlace = Habitationplace::where('habitation_id', '=', $this->id)->select('place_id');
            $rooms = Place::find($habitationPlace->room_id);
            $room = Room::find($rooms->id); 
            return $room;
        }

    если полностью и оно работает, как и вся прога, за исключением той сортировки
    p.s. варианта видоизменить/дополнить её чтобы напрямую через where в $habitation присоединить этит параметр нет же?
  • Как связать несколько переменных по разным бд в общий запрос?

    @CrimsonFox Автор вопроса
    JhaoDa, создается отчет. для сортировки вывода используется несколько параметров. все кроме одного напрямую связаны с habitation и через несколько where я их спокойно привязываю к отчету. но есть позиция выборки по этажам. Связь выглядит так:
    public function room() {
            $habitationPlace = Habitationplace::where('habitation_id', '=', $this->id)->select('place_id');
            $rooms = Place::find($habitationPlace->room_id);
            $room = Room::find($rooms->id); 
            return $room;
        }

    единственное, что я придумал - найти этот параметр отдельно и связать сортировку по получившимся двум (habitation и level_id)
    вопрос собственно в том, возможно ли это, а если нет, то как можно сделать данную выборку61e7a17662cd5532825769.png
    level(этаж) есть, но его существование на отчет нулевое