ts_code symbol name area industry list_date
0 000001.SZ NaN 平安银行 上海 银行 19910403
1 000002.SZ 2.0 万科A 上海 全国地产 19910129
2 000004.SH 4.0 ST国华 上海 软件服务 19910114
3 000005.SZ 5.0 ST星源 上海 环境保护 19901210
4 000006.SH NaN 深振业A 上海 区域地产 19920427
data
[
"area"
]
= data
[
"area"
]
.replace("上海"
,
"深圳")
#将area列中的上海替换为深圳
ts_code symbol name area industry list_date
0 000001.SZ NaN 平安银行 深圳 银行 19910403
1 000002.SZ 2.0 万科A 深圳 全国地产 19910129
2 000004.SH 4.0 ST国华 深圳 软件服务 19910114
3 000005.SZ 5.0 ST星源 深圳 环境保护 19901210
4 000006.SH NaN 深振业A 深圳 区域地产 19920427
data
[
"area"
]
= data
[
"area"
]
.str.replace("深圳"
,
"上海")
#将area列中深圳替换为上海
ts_code symbol name area industry list_date
0 000001.SZ NaN 平安银行 上海 银行 19910403
1 000002.SZ 2.0 万科A 上海 全国地产 19910129
2 000004.SH 4.0 ST国华 上海 软件服务 19910114
3 000005.SZ 5.0 ST星源 上海 环境保护 19901210
4 000006.SH NaN 深振业A 上海 区域地产 19920427
-- 复杂替换
使用apply函数lambda表达式进行替换
ts_code symbol name area industry list_date
0 000001.SZ NaN 平安银行 深圳 银行 19910403
1 000002.SZ 2.0 万科A 深圳 全国地产 19910129
2 000004.SH 4.0 ST国华 深圳 软件服务 19910114
3 000005.SZ 5.0 ST星源 深圳 环境保护 19901210
4 000006.SH NaN 深振业A 深圳 区域地产 19920427
# 将ts_code列中".SZ"和".SH"移动到股票代码前变为小写的"sz"和"sh"
data
[
"ts_code"
]
.apply(lambda code
:
"sz"+code
[:
6
]
if ".SZ" in code else "sh"+code
[:
6
]
)
0 sz000001
1 sz000002
2 sh000004
3 sz000005
4 sh000006
Name
:
ts_code
,
dtype
:
object
截取字符串
ts_code symbol name area industry list_date
0 000001.SZ NaN 平安银行 深圳 银行 19910403
1 000002.SZ 2.0 万科A 深圳 全国地产 19910129
2 000004.SZ 4.0 ST国华 深圳 软件服务 19910114
3 000005.SZ 5.0 ST星源 深圳 环境保护 19901210
4 000006.SZ NaN 深振业A 深圳 区域地产 19920427
# data["ts_code"].apply(lambda code: code[:6]) #lambda表达式截取前六位字符
data["ts_code"].str[:6] #截取 ts_code 列前六位字符
0 000001
1 000002
2 000004
3 000005
4 000006
Name: ts_code, dtype: object
视频移步:
https://www.bilibili.com/video/BV1Je411L7rB/?vd_source=7630aa6f518b760ec9d36398618be60f
1)不支持++/–操作:只能写成n+=i
2)
Python
中⽀持 + - * / % 这样的操作符. 并且它们的⾏为都和C语⾔⼀样.
3)/ 是 “传统除法” . 如果两个整数相除, 得到的结果仍然是整数, 如果其中⼀个数是浮点数, 那么得到的
结果也是浮点数;
4)// 是 “地板除”. ⽆论操作数类型如何, 都会对结果进⾏取