小编Pra*_*ala的帖子

使用行索引的Pandas Split DataFrame

我想使用行索引按不均匀的行数拆分数据帧。

下面的代码:

groups = df.groupby((np.arange(len(df.index))/l[1]).astype(int))
Run Code Online (Sandbox Code Playgroud)

仅适用于统一的行数。

df

a b c  
1 1 1  
2 2 2  
3 3 3  
4 4 4  
5 5 5  
6 6 6  
7 7 7  

l = [2, 5, 7]

df1  
1 1 1  
2 2 2  

df2  
3,3,3  
4,4,4  
5,5,5  

df3  
6,6,6  
7,7,7  

df4  
8,8,8
Run Code Online (Sandbox Code Playgroud)

python dataframe pandas pandas-groupby

3
推荐指数
2
解决办法
7393
查看次数

Python:读取带括号/长路径名的文件名时出现问题

我正在尝试用 pandas 读取 Excel 文件。

df=pd.read_excel('abcd (xyz-9) Interim Report 01-03-18.xlsx')
Run Code Online (Sandbox Code Playgroud)

这给了我文件未找到错误。如果我删除括号并将文件重命名为'abcd Interim Report 01-03-18.xlsx',那么它就可以正常工作。

我尝试用shutil重命名,但它给了我同样的错误

shutil.copyfile('abcd (xyz-9) Interim Report 01-03-18.xlsx','test.xlsx')
Run Code Online (Sandbox Code Playgroud)

我试过

1. pd.read_excel('abcd ^(xyz-9) Interim Report 01-03-18.xlsx')
2. pd.read_excel('abcd \\(xyz-9\\) Interim Report 01-03-18.xlsx')
Run Code Online (Sandbox Code Playgroud)

编辑:

即使我将 cwd 更改为文件位置,该文​​件似乎可以在本地驱动器上运行,但不能在网络驱动器上运行。

关于使用 glob 和os.path.exists

df=pd.read_excel('abcd (xyz-9) Interim Report 01-03-18.xlsx')
Run Code Online (Sandbox Code Playgroud)
shutil.copyfile('abcd (xyz-9) Interim Report 01-03-18.xlsx','test.xlsx')
Run Code Online (Sandbox Code Playgroud)

关于使用 glob 和os.stat

1. pd.read_excel('abcd ^(xyz-9) Interim Report 01-03-18.xlsx')
2. pd.read_excel('abcd \\(xyz-9\\) Interim Report 01-03-18.xlsx')
Run Code Online (Sandbox Code Playgroud)
for i in range(0,1):
    for filename in glob.glob(fpath+"\\"+ldir[i]+"\\"+"*Interim*.xlsx"):
        print(filename) …
Run Code Online (Sandbox Code Playgroud)

python windows shutil pandas spyder

2
推荐指数
1
解决办法
8535
查看次数

标签 统计

pandas ×2

python ×2

dataframe ×1

pandas-groupby ×1

shutil ×1

spyder ×1

windows ×1