我知道pandas旨在加载完全填充DataFrame但我需要创建一个空的DataFrame,然后逐个添加行.做这个的最好方式是什么 ?
我成功创建了一个空的DataFrame:
res = DataFrame(columns=('lib', 'qty1', 'qty2'))
Run Code Online (Sandbox Code Playgroud)
然后我可以添加一个新行并填充一个字段:
res = res.set_value(len(res), 'qty1', 10.0)
Run Code Online (Sandbox Code Playgroud)
它工作但似乎很奇怪: - /(它添加字符串值失败)
如何向我的DataFrame添加新行(具有不同的列类型)?
是否可以附加到不包含任何索引或列的空数据框?
我试图这样做,但最后继续得到一个空的数据帧.
例如
df = pd.DataFrame()
data = ['some kind of data here' --> I have checked the type already, and it is a dataframe]
df.append(data)
Run Code Online (Sandbox Code Playgroud)
结果如下:
Empty DataFrame
Columns: []
Index: []
Run Code Online (Sandbox Code Playgroud) 如何将单个项目添加到序列化的熊猫系列中.我知道这不是最有效的记忆方式,但我仍然需要这样做.
一些东西:
>> x = Series()
>> N = 4
>> for i in xrange(N):
>> x.some_appending_function(i**2)
>> print x
0 | 0
1 | 1
2 | 4
3 | 9
Run Code Online (Sandbox Code Playgroud)
另外,我如何向pandas DataFrame添加一行?
熊猫文档包括一个注释:
注意与list.append方法不同,它附加到原始列表并且不返回任何内容,此处追加不会修改df1并返回附加了df2的副本.
如何在不制作副本的情况下附加到现有DataFrame?或者在注释的条款中如何通过附加df2并返回任何内容来修改df1?
这是我使用的代码
iname = "name1"
ipassword = "password1"
iemail = "email@domain.com"
res1 = []
df = pd.read_csv("login.csv", sep=',', encoding="utf-8")
res1.append(iname,ipassword,iemail)
print(res1,res2,res3)
df.to_csv("login.csv", index=False)
Run Code Online (Sandbox Code Playgroud)
如何使用pandas数据框将名称,密码和电子邮件存储在csv文件中。
login.csv
name password email
admin admin asdfs
zds sd dsssfsfd
vipul rao dsfdsfs
Run Code Online (Sandbox Code Playgroud) 我有一个被定义为空的 Pandas 数据框,然后我想在进行一些计算后向其中添加一些行。
我尝试执行以下操作:
test = pd.DataFrame(columns=['Name', 'Age', 'Gender'])
if #some statement:
test.append(['James', '95', 'M'])
Run Code Online (Sandbox Code Playgroud)
如果我尝试打印然后附加到测试节目
print(test)
test.append(['a', 'a', 'a', 'a', 'a', 'a'])
print(test)
>>>
Empty DataFrame
Columns: [Name, Age, Gender]
Index: []
Empty DataFrame
Columns: [Name, Age, Gender]
Index: []
Run Code Online (Sandbox Code Playgroud)
很明显,这条线没有被添加到数据框中。
我希望输出是
Name | Age | Gender
James | 95 | M
Run Code Online (Sandbox Code Playgroud)