Предполагая, что комбинации (id |type | date)
уникальны, и ваша единственная цель - поворот, а не агрегация, вы можете использовать first
(или любую другую функцию, не ограниченную числовыми значениями):
from pyspark.sql.functions import first
(df_data
.groupby(df_data.id, df_data.type)
.pivot("date")
.agg(first("ship"))
.show())
## +---+----+------+------+------+
## | id|type|201601|201602|201603|
## +---+----+------+------+------+
## | 2| C| DOCK| null| null|
## | 0| A| DOCK| PORT| PORT|
## | 1| B| PORT| DOCK| null|
## +---+----+------+------+------+
Если эти предположения неверны, вам придется предварительно агрегировать свои данные. Например, для наиболее распространенного значения ship
:
from pyspark.sql.functions import max, struct
(df_data
.groupby("id", "type", "date", "ship")
.count()
.groupby("id", "type")
.pivot("date")
.agg(max(struct("count", "ship")))
.show())
## +---+----+--------+--------+--------+
## | id|type| 201601| 201602| 201603|
## +---+----+--------+--------+--------+
## | 2| C|[1,DOCK]| null| null|
## | 0| A|[1,DOCK]|[1,PORT]|[1,PORT]|
## | 1| B|[1,PORT]|[1,DOCK]| null|
## +---+----+--------+--------+--------+
Я соглашаюсь с комментарием Resharper. Я работаю 4.1. Я отключил его, перезапуск VS2008, и попробовал, "Преобразовывают в веб-приложение" снова, и это работало.
У нас есть та же проблема. Некоторые классы Form/UserControl не могут быть просмотрены в разработчике, и Visual Studio вызывает различные исключения.
существует одна типичная причина: Один из разработанного компонента брошенное необработанное исключение во время инициализации (в конструкторе или в событии Load или прежде).
Не только для этого случая, можно выполнить другой экземпляр Visual Studio, открыться/создать некоторый независимый проект, войти в меню-> Отладка-> Присоединение для обработки...-> избранный экземпляр процесса devenv.exe с проблематичным разработчиком. Тогда нажмите Ctrl+Alt+E, окна "Exceptions" нужно показать. Там проверьте "Брошенный" в категории исключения.
Теперь активный Visual Studio с разработчиком и попыткой просматривает разработчика. Если исключение будет выдано, Вы будете видеть стек вызовов (и возможно исходный код, если исключение было выдано от Вашего кода), и другая типичная информация о вызванной исключительной ситуации. Эта информация может быть очень полезной.
Используя VS 2005, я столкнулся с этой той же проблемой. Я выполнил шаги Chien, перечисленный в его исходном вопросе, но он все еще не работал, пока я не закрыл VS и вновь открыл решение. Теперь представление Designer выглядит хорошо.
Это происходило со мной очень часто на VS2005, особенно при добавлении пользовательских элементов управления к winform. Обычно я просто должен был просто восстановить, не будучи должен добавить дополнительные ссылки, или закрыть и вновь открыть VS.
нет никакой очевидной причины для этого, просто ошибки VS.
Я видел, как это происходило в VS2005 для проектов Window Forms, ASP.NET и Compact Framework. Проект, который я создаю, зависит от другой сборки в моем решении, но жалуется, что не может загрузить ее при попытке сгенерировать файл конструктора.
Я не уверен в точной причине, но иногда это будет происходит после того, как мы увеличим номер версии сборки. По какой-то причине Visual Studio не увидит эту сборку как «новую» и не поместит новую версию в папку bin / текущего проекта. Однако в большинстве случаев это происходит.
Удаление папки bin / (и папки obj / для хорошей оценки) проекта с ошибкой дизайнера, а затем повторная сборка, похоже, устраняет вред.