问题背景:
将原有的dataFram通过to_string转换操作后,希望能够转换回去覆盖原有的内容。
求解答,谢谢
问题背景:
将原有的dataFram通过to_string转换操作后,希望能够转换回去覆盖原有的内容。
求解答,谢谢
写个简单的demo吧,仅供参考。
>>> import pandas as pd
>>> import numpy as np
>>> def load_from_string(df_str):
lines = df_str.split('\n')
arr = [line.split() for line in lines[1:]]
colnames = lines[0].split()
idx = [row[0] for row in arr]
data = [list(map(float,row[1:])) for row in arr]
return pd.DataFrame(data, columns=colnames, index=idx)
>>> data = np.array([
[10.70, 11.95, 10.56, 11.71, 789.10, 68771048],
[7.28, 7.59, 7.17, 7.50, 57.01, 7741802],
[48.10, 50.59, 48.10, 50.28, 223.06, 4496598],
[66.70, 69.28, 66.66, 68.92, 1196.14, 17662768],
[7.00, 7.35, 6.93, 7.11, 783.15, 109975919],
[2.02, 2.10, 2.01, 2.08, 56.32, 27484360]
])
>>> colnames = ['开盘价','最高价','最低价','收盘价','成交额','成交量']
>>> idx = ['000625.SZ','000762.SZ','600132.SH','600009.SH','600126.SH','000882.SZ']
>>> stock = pd.DataFrame(data, columns=colnames, index=idx)
>>> stock_str = stock.to_string() # DataFrame转字符串
>>> load_from_string(stock_str) # 字符串转DataFrame
开盘价 最高价 最低价 收盘价 成交额 成交量
000625.SZ 10.70 11.95 10.56 11.71 789.10 68771048.0
000762.SZ 7.28 7.59 7.17 7.50 57.01 7741802.0
600132.SH 48.10 50.59 48.10 50.28 223.06 4496598.0
600009.SH 66.70 69.28 66.66 68.92 1196.14 17662768.0
600126.SH 7.00 7.35 6.93 7.11 783.15 109975919.0
000882.SZ 2.02 2.10 2.01 2.08 56.32 27484360.0