从String创建DataFrame

时间:2018-06-04 22:46:01

标签: python pandas

如何获取字符串并创建数据框。

假设我拥有的字符串如下。

ss = "This is a string"

如果我执行以下操作,则会产生错误。

pd.DataFrame(ss)
Traceback (most recent call last):

  File "<ipython-input-84-4694a8452254>", line 1, in <module>
    pd.DataFrame(ss)

  File "/Users/abrahammathew/anaconda3/lib/python3.6/site-packages/pandas/core/frame.py", line 404, in __init__
    raise ValueError('DataFrame constructor not properly called!')

ValueError: DataFrame constructor not properly called!

但是,如果我尝试创建一个系列,它就会起作用。

pd.Series(ss)
Out[85]: 
0    This is a string
dtype: object

2 个答案:

答案 0 :(得分:2)

尝试以下方法:

from pandas.compat import StringIO
df_string= pd.read_csv(StringIO(ss), sep=';')

或者:

df_string=pd.DataFrame(pd.Series(ss))

答案 1 :(得分:1)

您可以看到JFrame作为2D事物(而DataFrame将是1D)。 为了获得正确的SeriesDataFrame需要索引或列或某个维度。请尝试以下方法:

pandas

我想知道你为什么需要这个。