Функция Pandas Series.str.upper()
Series.str.upper()Это функция в Pandas, используемая для преобразования строк в верхний регистр.
При обработке данных нам часто нужно приводить регистр строк к единому формату, например преобразовывать аббревиатуры, заголовки и т. п. в верхний регистр для удобства чтения и распознавания.upper()Функция может преобразовать все строки в Series в верхний регистр.
Значение слова:upperОно означает «сверху, выше», и здесь указывает на преобразование букв в верхний регистр.
Базовый синтаксис и параметры
str.upper()является строковым методом доступа Series, поэтому сначала нужно иметь Series, содержащий строки, а затем через.strаксессор, чтобы вызвать его.
Формат синтаксиса
Series.str.upper()
Описание параметра
- Параметр: Нет параметров. Эта функция не требует параметров; просто вызовите её напрямую.
Описание функций
- Возвращаемое значение: Возвращает Series, содержащий строки в верхнем регистре. Длина нового Series совпадает с длиной исходного Series.
- Действие: Преобразует каждый строковый элемент в Series в верхний регистр; нестроковые элементы остаются без изменений.
- Примечание: Эта функция преобразует только буквенные символы; цифры, знаки пунктуации и другие символы остаются без изменений.
Примеры
Давайте подробно разберём на серии примеров от простого к сложному,str.upper()использование.
Пример 1: Базовое использование — преобразование простых строк
Пример
# Создать Series, содержащий строки в нижнем регистре
s = pd.Series(['hello', 'world', 'example', 'python'])
# Использовать str.upper() для преобразования всех строк в верхний регистр
result = s.str.upper()
print("Исходный ряд:")
print(s)
print("nConverted result:")
print(result)
Результат вывода:
原始 Series: 0 hello 1 world 2 example 3 python dtype: object 转换后的结果: 0 HELLO 1 WORLD 2 EXAMPLE 3 PYTHON dtype: object
Анализ кода:
pd.Series(['hello', 'world', 'example', 'python'])Создан Series, содержащий строки в нижнем регистре.s.str.upper()Через строковый аксессор.strcallupper()метод, преобразующий все строки в верхний регистр.- Преобразованный результат — это новый Series; исходный Series остаётся неизменным.
Пример 2: Преобразование строк со смешанным регистром
Когда строка содержит символы в смешанном регистре,upper()все строчные буквы будут преобразованы в прописные.
Пример
# Создать Series, содержащий строки со смешанным регистром
s = pd.Series(['Hello World', 'example tutorial', 'PyThOn', 'Pandas'])
# Использовать str.upper() для преобразования в верхний регистр
result = s.str.upper()
print("Исходный ряд:")
print(s)
print("nConverted result:")
print(result)
Результат вывода:
原始 Series: 0 Hello World 1 example tutorial 2 PyThOn 3 Pandas dtype: object 转换后的结果: 0 HELLO WORLD 1 EXAMPLE TUTORIAL 2 PYTHON 3 PANDAS
Анализ кода:
- Независимо от того, сколько строчных букв содержит строка,
upper()все они будут преобразованы в верхний регистр. - Пробелы, цифры и знаки препинания остаются без изменений.
- Это очень полезно, когда нужно унифицировать форматы данных, например приводить коды стран к верхнему регистру.
Пример 3: Обработка строк, содержащих специальные символы
upper()Он преобразует только буквенные символы; остальные символы остаются без изменений.
Пример
# Создать Series, содержащий специальные символы
s = pd.Series(['hello123', 'world@example', 'python!', 'a+b=c'])
# Использовать str.upper() для преобразования в верхний регистр
result = s.str.upper()
print("Исходный ряд:")
print(s)
print("nConverted result:")
print(result)
Результат вывода:
原始 Series: 0 hello123 1 world@example 2 python! 3 a+b=c dtype: object 转换后的结果: 0 HELLO123 1 WORLD@EXAMPLE 2 PYTHON! 3 A+B=C
Анализ кода:
- Цифры (123) остаются без изменений.
- Символы (@, !, +, =) остаются без изменений.
- Только буквенные символы преобразуются в верхний регистр.
Пример 4: Унификация формата кодов стран
В практических приложениях,upper()он часто используется для унификации таких форматов, как коды стран и коды валют.
Пример
# Введённый пользователем код страны (может быть в любом регистре)
country_codes = pd.Series(['cn', 'us', 'Uk', 'Jp', 'fr'])
# Привести к верхнему регистру единообразно
standardized = country_codes.str.upper()
print("Исходные коды стран:")
print(country_codes)
print("nПосле унификации формата:")
print(standardized)
Результат вывода:
原始国家代码: 0 cn 1 us 2 Uk 3 Jp 4 fr dtype: object 统一格式后: 0 CN 1 US 2 UK 3 JP 4 FR dtype: object
Примечания
str.upper()Он преобразует только буквенные символы; небуквенные символы, такие как цифры, пробелы и знаки препинания, остаются без изменений.- Если Series содержит нестроковые элементы (такие как NaN, целые числа и т. д.),
upper()они остаются как есть, и ошибка не возникает. - Эта функция возвращает новый Series и не изменяет исходные данные.
- Для китайских строк китайские иероглифы не изменяются, так как в китайском языке нет прописных и строчных букв.
Другие расширения
Pandas: общие функции