Как можно заставить Power Query / Excel отделить и связать два уникальных идентификатора из одного столбца?

Hey zero323 Я использовал ту же технику для просмотра метаданных, и я закодировал это Transformer.

def _transform(self, data):
    maxValues = self.getOrDefault(self.maxValues)
    categoricalCols = self.getOrDefault(self.categoricalCols)

    new_schema = types.StructType(data.schema.fields)
    new_data = data
    for (col, maxVal) in zip(categoricalCols, maxValues):
        # I have not decided if I should make a new column or
        # overwrite the original column
        new_col_name = col + "_categorical"

        new_data = new_data.withColumn(new_col_name,
                                       data[col].astype(types.DoubleType()))

        # metadata for a categorical column                                                                                                                                 
        meta = {u'ml_attr' : {u'vals' : [unicode(i) for i in range(maxVal + 1)],
                              u'type' : u'nominal',
                              u'name' : new_col_name}}

        new_schema.add(new_col_name, types.DoubleType(), True, meta)

    return data.sql_ctx.createDataFrame(new_data.rdd, new_schema)
-3
задан Olly 4 April 2019 в 08:06
поделиться

1 ответ

Шаг за шагом

Выделите входные данные

Данные ... Из таблицы / диапазона ... не проверять [] В моей таблице есть заголовки

Добавить столбец. .. Пользовательский столбец ... используя имя столбца Пользовательский, с формулой

Text.Length([Column1])

Добавить столбец ... Пользовательский столбец ... используя имя столбца Пользовательский 1, с формулой

if [Custom]=6 then [Column1] else null
[118 ] Нажмите на столбец Custom.1, щелкните правой кнопкой мыши и заполните ... вниз ...

Используйте стрелку рядом с пользовательским столбцом и снимите флажок [] 6, оставив только [x] 11

Щелкните столбец Пользовательский, щелкните правой кнопкой мыши и выберите удалить столбцы

файл ... закрыть и загрузить [ 1111]

Код производства:

let Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
#"Added Custom" = Table.AddColumn(Source, "Custom", each Text.Length([Column1])),
#"Added Custom1" = Table.AddColumn(#"Added Custom", "Custom.1", each if [Custom]=6 then [Column1] else null),
#"Filled Down" = Table.FillDown(#"Added Custom1",{"Custom.1"}),
#"Filtered Rows" = Table.SelectRows(#"Filled Down", each ([Custom] =11)),
#"Removed Columns" = Table.RemoveColumns(#"Filtered Rows",{"Custom"})
in #"Removed Columns"
0
ответ дан horseyride 4 April 2019 в 08:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: