好的,这样可行:
import pandas as pd
import numpy as np
ind = [0,1,2]
d = {'col1' : pd.Series([1, 2, 3, 4], index=['a', 'b', 'c', 'd']), 'col2' : pd.Series([5, 6, 7, 8], index=['a', 'b', 'c', 'd']), 'col3' : pd.Series([9, 10, 11, 12], index=['a', 'b', 'c', 'd'])}
df = pd.DataFrame(d)
print(df)
给出以下内容:
col1 col2 col3
a 1 5 9
b 2 6 10
c 3 7 11
d 4 8 12
使用数学添加列,这有效:
df['new'] = df['col2'] + df['col3']
给出:
col1 col2 col3 new
a 1 5 9 14
b 2 6 10 16
c 3 7 11 18
d 4 8 12 20
但这不起作用:
df['new2'] = str(df['col3'])
如果给出这个,这很奇怪:
col1 col2 col3 new new2
a 1 5 9 14 a 9\nb 10\nc 11\nd 12\nName: col3...
b 2 6 10 16 a 9\nb 10\nc 11\nd 12\nName: col3...
c 3 7 11 18 a 9\nb 10\nc 11\nd 12\nName: col3...
d 4 8 12 20 a 9\nb 10\nc 11\nd 12\nName: col3...
帮助太棒了,谢谢!
答案 0 :(得分:1)
尝试一次
df['new2'] = df['col3'].astype(str)
答案 1 :(得分:1)
<script src="http://alasql.org/console/alasql.min.js"></script>
<script src="http://alasql.org/console/xlsx.core.min.js"></script>
你可以在熊猫中找到很多这样的方法。