python - 如何从csv文件中保存每一行
问题描述
我想从 csv 文件中保存每一行。但是,即使我将索引列发送为 false,它也只会打印索引列。以下是我的代码:
def sizefcn(self):
path1 = self.folder_path
path2 = self.file_path
path3 = Path(path2)
file2=self.get_entry2()
sizes = pd.read_csv(path3,header=None, index_col=False)
for index, row in sizes.iterrows():
size = row
print(size)
我输入了一个 3 行且没有标题的 csv,但它给了我索引和行,所以我得到的输出是
(0, 0 111
Name: 0, dtype: int64)
(1, 0 1111
Name: 1, dtype: int64)
(2, 0 121
Name: 2, dtype: int64)
但我希望输出是数字:111、1111、121。
解决方案
我相信index_col
需要一个整数作为参数。它定义了您想要将 csv 中的哪一列用作索引。尝试完全省略它:
sizes = pd.read_csv(path3, header=None)
我应该补充一点,如果你要保存这是一个 csv,你会想要包含index=False
. 例如:
sizes.to_csv('outputfilename.csv', header=False, index=False)
编辑: for 循环也在迭代索引。尝试这个:
for index, row in sizes.iterrows():
size = row
print(size)
我不太确定您要做什么,但是考虑到 pandas 的广泛功能,可能有比为它编写函数更好的方法。你能更详细地解释你的问题吗?
从提供的描述来看,您似乎想要这样:
for index, row in sizes.iterrows():
size = row.to_list()
print(size)
我试过这个,它对我有用:
In[]: df = pd.DataFrame({0:range(5), 1:range(5,10)})
In[]: df
Out[]:
0 1
0 0 5
1 1 6
2 2 7
3 3 8
4 4 9
In[]: for index, row in df.iterrows():
print(row.to_list())
Out[]:
[0, 5]
[1, 6]
[2, 7]
[3, 8]
[4, 9]
推荐阅读
- python - psycopg2 vs MySQLdb 反斜杠转义行为
- ios - iOS——sceneWillResignActive在拉状态栏看到通知中心时调用了两次
- vb.net - 使用 top always 应用程序锁定工作区域
- r - 我的 R 条形图没有显示最后一个数字?
- python - Python - 为什么反向地理编码会引发 UnicodeDecode 错误?
- javascript - 单击特定按钮时,如何将所有按钮颜色重置为其原始颜色并添加新的特定颜色?
- python - 简单的方程反转
- reactjs - 带有样式的材质 UI
- reactjs - 谷歌 api 已经出现在 react 应用程序中
- python - 安装 gtts(导入 gTTS)谷歌文本到语音库时出错