擅长:python、mysql、java
<p>这里有一种使用Pandas<code>str</code>方法的方法:</p>
<pre><code>df['DOB'] = pd.to_datetime(df['DOB']) # convert DOB to datetime if necessary
df['TID'] = df['DOB'].dt.year.astype(str) + '-' + df['UID'].astype(str).str.zfill(7) + '-P'
print(df)
UID DOB BEDNUM Year TID
0 0 1900-01-01 CICU1 1900 1900-0000000-P
1 1 1927-05-21 CICU1 1927 1927-0000001-P
2 2 1929-10-03 CICU1 1929 1929-0000002-P
3 3 1933-06-29 CICU1 1933 1933-0000003-P
4 4 1936-01-09 CICU1 1936 1936-0000004-P
5 5 1947-11-14 CICU1 1947 1947-0000005-P
6 6 1900-01-01 CICU1 1900 1900-0000006-P
7 7 1927-05-21 CICU1 1927 1927-0000007-P
8 8 1929-10-03 CICU1 1929 1929-0000008-P
9 9 1933-06-29 CICU1 1933 1933-0000009-P
10 10 1936-01-09 CICU1 1936 1936-0000010-P
11 11 1947-11-14 CICU1 1947 1947-0000011-P
</code></pre>