Lui*_*uel 3 python numpy pandas
我有以下代码:
s1 = pd.DataFrame(np.random.uniform(-1,1,size=10))
s2 = pd.DataFrame(np.random.normal(-1,1, size=10))
s3 = pd.concat([s1, s2], axis=1)
s3.columns = ['s1','s2']
Run Code Online (Sandbox Code Playgroud)
这会生成如下所示的DF:
s1 s2
0 -0.841204 -1.857014
1 0.961539 -1.417853
2 0.382173 -1.332674
3 -0.535656 -2.226776
4 -0.854898 -0.644856
5 -0.538241 -2.178466
6 -0.761268 -0.662137
7 0.935139 0.475334
8 -0.622293 -0.612169
9 0.872111 -0.880220
Run Code Online (Sandbox Code Playgroud)
如何通过现在时间的时间戳添加列(或替换索引0-9)?np数组的大小不一定是10
您可以使用datetime的now方法创建时间戳,并将其分配给新列,如:s3['new_col'] = dt.datetime.now()或直接指派给索引:
In [9]:
import datetime as dt
s3.index = pd.Series([dt.datetime.now()] * len(s3))
s3
Out[9]:
s1 s2
2014-08-17 23:59:35.766968 0.916588 -1.868320
2014-08-17 23:59:35.766968 0.139161 -0.939818
2014-08-17 23:59:35.766968 -0.486001 -2.524608
2014-08-17 23:59:35.766968 0.739789 -0.609835
2014-08-17 23:59:35.766968 -0.822114 -0.304406
2014-08-17 23:59:35.766968 -0.050685 -1.295435
2014-08-17 23:59:35.766968 -0.196441 -1.715921
2014-08-17 23:59:35.766968 -0.421514 -1.618596
2014-08-17 23:59:35.766968 -0.695084 -1.241447
2014-08-17 23:59:35.766968 -0.541561 -0.997481
Run Code Online (Sandbox Code Playgroud)
请注意,由于分配的分辨率和速度,您将在索引中获得大量重复值,不确定这是多么有用,在我看来,最好将其作为单独的列.