找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 3023|回复: 7

[求助] 学校暑假课作业,不会做求帮助啊,有偿有偿

2

主题

3

帖子

3

积分

贫民

积分
3
最后的肖邦 发表于 2021-8-22 17:55:24 | 显示全部楼层 |阅读模式
生成一个数据集如下
import pandas as pd
df ={'姓名':['张三','李四','王五','赵六','陈七'],
'拼音':['Zhang San','Li Si','Wang Wu','Zhao Liu','Chen Qi'],
'性别':['男','F','M','女','男'],
'工号':['33319911212555','44419991012666','77719930302666','77719910309333','88819970909333'],
'入职测评':['C:75_good','D:58_bad','D:43_bad','B:80_verygood','A:95_excellent'],
'家庭住址':['火星市外城区无名路366号','木星市内海区洋流路34号','木星市小行星区量子力学路77号','火星市外城区斐波那契路41号','木星市小行星区欧几里得路3号'],
'薪酬':['1.7万','8.2千','0.7万','2.5千','1.0万']}
df = pd.DataFrame(df)
df
1.png


请用代码新增两个变量“城市”和“地区”,结果如下
2.png


注:请将代码制到回答框,并将结果截图粘贴到回答框(不要附件形式

回复

使用道具 举报

2

主题

3

帖子

3

积分

贫民

积分
3
最后的肖邦  楼主| 发表于 2021-8-22 19:09:23 | 显示全部楼层
aaaAAAAAAAAA
回复 支持 反对

使用道具 举报

0

主题

4

帖子

4

积分

贫民

积分
4
三点水 发表于 2021-9-6 15:17:48 | 显示全部楼层
df['城市']='火星市'
for a,b in zip(range(df.shape[0]),['外城区','内海区','小行星区','外城区','小行星区']):
     df.loc[a,'地区']=b
回复 支持 反对

使用道具 举报

0

主题

12

帖子

12

积分

贫民

积分
12
alexru298 发表于 2021-9-6 15:27:46 | 显示全部楼层
  1. import pandas as pd
  2. df ={'姓名':['张三','李四','王五','赵六','陈七'],
  3. '拼音':['Zhang San','Li Si','Wang Wu','Zhao Liu','Chen Qi'],
  4. '性别':['男','F','M','女','男'],
  5. '工号':['33319911212555','44419991012666','77719930302666','77719910309333','88819970909333'],
  6. '入职测评':['C:75_good','D:58_bad','D:43_bad','B:80_verygood','A:95_excellent'],
  7. '家庭住址':['火星市外城区无名路366号','木星市内海区洋流路34号','木星市小行星区量子力学路77号','火星市外城区斐波那契路41号','木星市小行星区欧几里得路3号'],
  8. '薪酬':['1.7万','8.2千','0.7万','2.5千','1.0万']}
  9. df = pd.DataFrame(df)
  10. df["城市"]=['火星市','火星市','火星市','火星市','火星市']
  11. df["地区"]=['外城区','内海区','小行星区','外城区','小行星区']
  12. print(df)
复制代码
回复 支持 反对

使用道具 举报

0

主题

102

帖子

102

积分

侠客

积分
102
傻眼貓咪 发表于 2021-9-7 13:15:46 | 显示全部楼层
  1. import pandas as pd
  2. df ={'姓名':['张三','李四','王五','赵六','陈七'],
  3. '拼音':['Zhang San','Li Si','Wang Wu','Zhao Liu','Chen Qi'],
  4. '性别':['男','F','M','女','男'],
  5. '工号':['33319911212555','44419991012666','77719930302666','77719910309333','88819970909333'],
  6. '入职测评':['C:75_good','D:58_bad','D:43_bad','B:80_verygood','A:95_excellent'],
  7. '家庭住址':['火星市外城区无名路366号','木星市内海区洋流路34号','木星市小行星区量子力学路77号','火星市外城区斐波那契路41号','木星市小行星区欧几里得路3号'],
  8. '薪酬':['1.7万','8.2千','0.7万','2.5千','1.0万']}
  9. df = pd.DataFrame(df)
  10. df["城市"]=['火星市','火星市','火星市','火星市','火星市']
  11. df["地区"]=['外城区','内海区','小行星区','外城区','小行星区']

  12. # 另外加了兩行代碼,對齊輸出
  13. pd.set_option("display.unicode.ambiguous_as_wide", True)
  14. pd.set_option("display.unicode.east_asian_width", True)
  15. print(df)
复制代码

回复 支持 反对

使用道具 举报

0

主题

17

帖子

17

积分

贫民

积分
17
一杆钓起满天星 发表于 2021-9-23 17:12:45 | 显示全部楼层
  1. import pandas as pd
  2. df ={'姓名':['张三','李四','王五','赵六','陈七'],
  3. '拼音':['Zhang San','Li Si','Wang Wu','Zhao Liu','Chen Qi'],
  4. '性别':['男','F','M','女','男'],
  5. '工号':['33319911212555','44419991012666','77719930302666','77719910309333','88819970909333'],
  6. '入职测评':['C:75_good','D:58_bad','D:43_bad','B:80_verygood','A:95_excellein'],
  7. '家庭住址':['火星市外城区无名路366号','木星市内海区洋流路34号','木星市小行星区量子力学路77号','火星市外城区斐波那契路41号','木星市小行星区欧几里得路3号'],
  8. '薪酬':['1.7万','8.2千','0.7万','2.5千','1.0万']}
  9. df = pd.DataFrame(df)

  10. addr1 = []
  11. addr2 = []
  12. for dizhi in df['家庭住址']:
  13.     address1 = dizhi.split('市')  # 用“市”字划分字符串,返回一个列表
  14.     addr1.append(address1[0]+'市')
  15.     address2 = address1[1].split('区')  # 用“区”字划分address1列表的第二个元素,返回一个列表
  16.     addr2.append(address2[0]+'区')
  17.    
  18. df["城市"]=addr1
  19. df["地区"]=addr2

  20. # 对齐
  21. pd.set_option("display.unicode.ambiguous_as_wide", True)
  22. pd.set_option("display.unicode.east_asian_width", True)
  23. #全部显示
  24. pd.set_option('display.max_columns', None)

  25. print(df)
复制代码
回复 支持 反对

使用道具 举报

0

主题

17

帖子

17

积分

贫民

积分
17
一杆钓起满天星 发表于 2021-9-23 17:16:07 | 显示全部楼层

这是从家庭地址里取出来的市和区,无论你给原列表加多少行,代码不会变
回复 支持 反对

使用道具 举报

0

主题

3

帖子

3

积分

贫民

积分
3
18727924932 发表于 2021-9-26 11:10:17 | 显示全部楼层
import pandas as pd
df ={'姓名':['张三','李四','王五','赵六','陈七'],
'拼音':['Zhang San','Li Si','Wang Wu','Zhao Liu','Chen Qi'],
'性别':['','F','M','',''],
'工号':['33319911212555','44419991012666','77719930302666','77719910309333','88819970909333'],
'入职测评':['C:75_good','D:58_bad','D:43_bad','B:80_verygood','A:95_excellent'],
'家庭住址':['火星市外城区无名路366','木星市内海区洋流路34','木星市小行星区量子力学路77','火星市外城区斐波那契路41','木星市小行星区欧几里得路3'],
'薪酬':['1.7','8.2','0.7','2.5','1.0']}
df = pd.DataFrame(df)
dic1 = {
    'good':'C',
    'bad':'D',
    'verygood':'B',
    'excellent':'A'
}
df['测评等级'] = df['入职测评'].map(lambda x : dic1[x.split('_')[1]])
df['评测得分'] = df['入职测评'].map(lambda x : x.split(':')[1].split('_')[0])
df['城市'] = df['家庭住址'].map(lambda x :x.split('')[0]+'')
df['地区'] = df['家庭住址'].map(lambda x :x.split('')[1].split('')[0]+'')
df
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表