pandas怎么将10-12k变为10k-12k
时间: 2023-12-03 11:05:07 浏览: 124
pandas-2.1.3-cp312-cp312-win-amd64.whl
5星 · 资源好评率100%
你可以使用 Pandas 中的 `apply()` 函数和 Python 中的字符串操作来实现这个功能。下面是一个例子:
```python
import pandas as pd
# 创建一个示例 DataFrame
df = pd.DataFrame({
'value': ['10-12k', '5-8k', '20-25k', '15-20k']
})
# 定义一个函数,将范围转换为带有 k 后缀的字符串
def format_range(value):
start, end = value.split('-')
if start.endswith('k'):
start = start[:-1] + '000'
if end.endswith('k'):
end = end[:-1] + '000'
return start + 'k-' + end + 'k'
# 使用 apply() 函数应用函数到 value 列中的每个值,并将结果存储在新的 formatted_range 列中
df['formatted_range'] = df['value'].apply(format_range)
# 打印结果
print(df)
```
在这个例子中,我们首先创建一个示例 DataFrame,其中包含一列名为 `value` 的字符串,每个字符串表示一个范围,例如 "10-12k"。然后,我们定义了一个名为 `format_range` 的函数,它接受一个字符串并返回一个带有 k 后缀的范围字符串,例如 "10k-12k"。接下来,我们使用 `apply()` 函数将该函数应用于 `value` 列中的每个值,并将结果存储在新的 `formatted_range` 列中。最后,我们打印了结果。
注意,这个函数假定范围中的数字已经以 k 为单位。如果你需要处理其他单位,你可以根据需要修改该函数。
阅读全文