你可以通過添加.values來做到這一點,而如何創建一個系列呢?
#df1 = pd.DataFrame(df.Price.values, df.Timestamp)
serie = pd.Series(df.Price.values, df.Timestamp)
看到它在這裏回答:pandas.Series() Creation using DataFrame Columns returns NaN Data entries
完整的示例:
import pandas as pd
import numpy as np
import datetime
import matplotlib.pyplot as plt
df = pd.DataFrame(columns=["Price","Timestamp","Random"])
df.Price = np.random.randint(100, size = 10)
df.Timestamp = [datetime.datetime(2000,1,1) + \
datetime.timedelta(days=int(i)) for i in np.random.randint(100, size = 10)]
df.Random = np.random.randint(10, size= 10)
serie = pd.Series(df.Price.values, df.Timestamp)
serie.plot()
plt.show()
差異
print("{}\n{}".format(type(df.Price), type(df.Price.values)))
<class 'pandas.core.series.Series'> # does not work
<class 'numpy.ndarray'> # works
我認爲它會改變第一個DataFrame。我不需要在第一個數據幀上進行更改。但是不要刪除這段代碼,它可以對其他人有所幫助 –
如果沒有分配輸出,則沒有變化。 – jezrael
空'DataFrame':無數字數據繪圖 我收到這種錯誤 –