将 Python 中混合类型的值列表附加到数据框
Append a list of values with mixed types in Python to data frame
我有一个使用 pandas.read_csv 从 csv 读取的数据框,每一行数据框如下所示:
[1, '10/18/2016 06:00', 1, 14, 0, 5.5]
基本上,它由整数、字符串和浮点数组成。现在,我想根据现有数据生成更多数据(新行)并附加到原始数据框。当我尝试使用以下代码调用函数 append
时:
df.append(list(newrow))
我收到错误:
RuntimeWarning: unorderable types: str() < int(), sort order is undefined for incomparable objects.
result = result.union(other)
我觉得string类型在这里有点调皮,但我没有想出办法实现。
另外,我也试过先把df
转成df.values
,再用numpy.vstack(df.values, numpy.array(newrow))
。但是,这段代码的结果变成了
['1', '10/18/2016 06:00', '1', '14', '0', '5.5']
其中所有字段都变成字符串。感谢任何帮助。
这行得通吗?
#build a DataFrame first using the list and column names from original DF.
df.append(pd.DataFrame(columns=df.columns,data=[newrow]))
这似乎适用于附加到空数据帧。 列必须匹配 .
column_titles = ['col1','col2']
data = ['1', '10/18/2016 06:00', '1', '14', '0', '5.5']
# creates empty df w/headers
df = pd.DataFrame(columns = column_titles)
df2 = pd.DataFrame([data])
df = df.append(df2)
我有一个使用 pandas.read_csv 从 csv 读取的数据框,每一行数据框如下所示:
[1, '10/18/2016 06:00', 1, 14, 0, 5.5]
基本上,它由整数、字符串和浮点数组成。现在,我想根据现有数据生成更多数据(新行)并附加到原始数据框。当我尝试使用以下代码调用函数 append
时:
df.append(list(newrow))
我收到错误:
RuntimeWarning: unorderable types: str() < int(), sort order is undefined for incomparable objects.
result = result.union(other)
我觉得string类型在这里有点调皮,但我没有想出办法实现。
另外,我也试过先把df
转成df.values
,再用numpy.vstack(df.values, numpy.array(newrow))
。但是,这段代码的结果变成了
['1', '10/18/2016 06:00', '1', '14', '0', '5.5']
其中所有字段都变成字符串。感谢任何帮助。
这行得通吗?
#build a DataFrame first using the list and column names from original DF.
df.append(pd.DataFrame(columns=df.columns,data=[newrow]))
这似乎适用于附加到空数据帧。 列必须匹配 .
column_titles = ['col1','col2']
data = ['1', '10/18/2016 06:00', '1', '14', '0', '5.5']
# creates empty df w/headers
df = pd.DataFrame(columns = column_titles)
df2 = pd.DataFrame([data])
df = df.append(df2)