我可以使用索引中的Pandas.apply方法吗?

时间:2018-01-20 03:35:03

标签: python-3.x pandas

我想从Pandas.DataFrame

创建文件

1.txt,内容为'a'

2.txt,内容为'b'

3.txt,内容为'c'

4.txt,内容为'd'

5.txt,内容为'e'

import pandas as pd
import numpy as np

df = pd.DataFrame(
{
 'filename': [1, 2, 3, 4, 5],
 'sex': ['a', 'b', 'c', 'd', 'e']})

#I wanted to use apply method from index. but I coundn't find the index from apply Method
df["filename"].apply(lambda x: x.to_csv(df["filename"][x....])

# This doesn't work
for i in range(len(df["filename"])):
    df["filename"].iloc[[i],[1]].to_csv(f"{df.iloc[[i],[0]]}.txt")

我该如何解决?请给我建议。

1 个答案:

答案 0 :(得分:2)

如果我理解正确,这应该做你想要的:

df.apply(lambda x: open('{}.txt'.format(x.filename), 'w').write(x.sex), axis=1)

请注意,您不能使用.to_csv,因为这是DataFrame或Series的方法。它不能用在像'a'或'b'

这样的字符串上