用python处理一下需求:现有一个DataFrame数据框,有一列name姓名列,包含两个或三个字的名字,如:张三,李大那,现在要对姓名列加密,格式最终效果一下:张*,李**,代码如何写
时间: 2023-05-14 16:04:12 浏览: 66
可以使用Python中的pandas库来处理DataFrame数据框,具体代码如下:
```python
import pandas as pd
# 创建一个DataFrame数据框
df = pd.DataFrame({'name': ['张三', '李大那']})
# 定义一个加密函数
def encrypt_name(name):
if len(name) == 2:
return name[0] + '*'
elif len(name) == 3:
return name[0] + '**' + name[-1]
else:
return name
# 对姓名列进行加密
df['name'] = df['name'].apply(encrypt_name)
# 输出加密后的DataFrame数据框
print(df)
```
输出结果为:
```
name
0 张*
1 李**那
```
以上代码中,我们首先创建了一个包含姓名列的DataFrame数据框。然后定义了一个加密函数encrypt_name,该函数根据姓名的长度来决定如何加密。最后,我们使用apply函数将加密函数应用到姓名列上,得到加密后的DataFrame数据框。
相关问题
从tushare获取股票列表,将股票代码列和股票中文名列组成新的一列,放到一个新的dataframe中
好的,可以使用tushare包中的get_stock_basics()函数获取股票列表,然后使用pandas包中的concat()函数将股票代码列和股票中文名列组成新的一列,最后放到一个新的dataframe中。下面是代码实现:
```python
import tushare as ts
import pandas as pd
# 获取股票列表
stock_list = ts.get_stock_basics()
# 将股票代码列和股票中文名列组成新的一列
stock_list['code_name'] = stock_list.index + ' ' + stock_list['name']
# 新建一个dataframe
new_df = pd.DataFrame({'code_name': stock_list['code_name']})
# 打印结果
print(new_df)
```
输出结果如下:
```
code_name
000001 000001 平安银行
000002 000002 万科A
000004 000004 国农科技
000005 000005 世纪星源
000006 000006 深振业A
... ...
688777 688777 中控技术
688788 688788 科思科技
688819 688819 天能股份
688981 688981 中芯国际-U
689009 689009 九号公司-U
```
注意:这里只是将股票代码列和股票中文名列组成新的一列,如果还需要其他列的数据,可以在新建dataframe之前先对原始的股票列表进行筛选和处理。
题目三: 创建一个名为df的DataFrame,包含以下数据: 姓名 年龄 部门 0 John 30 销售 1 Emily 28 人力资源 2 Michael 35 财务将姓名列的数据类型转换为字符串,并在"姓名"列的每个元素前添加字符串"Name: ",然后打印出DataFrame的内容。
好的,我会创建一个名为df的DataFrame,包含姓名、年龄和部门三列,然后将姓名列的数据类型转换为字符串,并在"姓名"列的每个元素前添加字符串"Name: ",最后打印出DataFrame的内容。代码如下:
```python
import pandas as pd
# 创建DataFrame
data = {'姓名': ['John', 'Emily', 'Michael'], '年龄': [30, 28, 35], '部门': ['销售', '人力资源', '财务']}
df = pd.DataFrame(data)
# 将姓名列的数据类型转换为字符串,并在每个元素前添加"Name: "
df['姓名'] = 'Name: ' + df['姓名'].astype(str)
# 打印DataFrame的内容
print(df)
```
输出结果如下:
```
姓名 年龄 部门
0 Name: John 30 销售
1 Name: Emily 28 人力资源
2 Name: Michael 35 财务
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![.zip](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)